Java:
import java.util.Calendar; public class main { public static void main(String[] args) { testStringBuilder(); } public static void testStringBuilder() { StringBuilder sBuilder = new StringBuilder(); System.out.println("1. string of new StringBuilder()"); if(sBuilder == null){ System.out.println("string:[is null]"); }else{ System.out.println("result:string:[" + sBuilder + "],length:[" + sBuilder.length() + "]"); } StringBuilder sBuilder2 = new StringBuilder(""); System.out.println("2. string of new StringBuilder(\"\")"); if(sBuilder2 == null){ System.out.println("string:[is null]"); }else{ System.out.println("result:string:[" + sBuilder2 + "],length:[" + sBuilder2.length() + "]"); } StringBuilder sBuilder3 = new StringBuilder(); String nullString = null; sBuilder3.append(nullString); System.out.println("3. string of new StringBuilder() append null"); if(sBuilder3 == null){ System.out.println("string:[is null]"); }else{ System.out.println("result:string:[" + sBuilder3 + "],length:[" + sBuilder3.length() + "]"); } StringBuilder sBuilder4 = new StringBuilder(""); sBuilder4.append(nullString); System.out.println("4. string of new StringBuilder(\"\") append null"); if(sBuilder4 == null){ System.out.println("string:[is null]"); }else{ System.out.println("result:string:[" + sBuilder4 + "],length:[" + sBuilder4.length() + "]"); } }
結果:
1. string of new StringBuilder()
result:string:[],length:[0]
2. string of new StringBuilder("")
result:string:[],length:[0]
3. string of new StringBuilder() append null
result:string:[null],length:[4]
4. string of new StringBuilder("") append nullresult:string:[null],length:[4]
C#:
using System; using System.Text; namespace test { class Program { static void Main(string[] args) { StringBuilderTest(); } public static void StringBuilderTest() { StringBuilder sBuilder = new StringBuilder(); Console.WriteLine("1. string of new StringBuilder()"); if(sBuilder == null) { Console.WriteLine("string:[is null]"); } else { Console.WriteLine("result:string:[" + sBuilder + "],length:[" + sBuilder.Length + "]"); } StringBuilder sBuilder2 = new StringBuilder(""); Console.WriteLine("2. string of new StringBuilder(\"\")"); if(sBuilder2 == null) { Console.WriteLine("string:[is null]"); } else { Console.WriteLine("result:string:[" + sBuilder2 + "],length:[" + sBuilder2.Length + "]"); } StringBuilder sBuilder3 = new StringBuilder(); String nullString = null; sBuilder3.Append(nullString); Console.WriteLine("3. string of new StringBuilder() append null"); if(sBuilder == null) { Console.WriteLine("string:[is null]"); } else { Console.WriteLine("result:string:[" + sBuilder3 + "],length:[" + sBuilder3.Length + "]"); } StringBuilder sBuilder4 = new StringBuilder(""); sBuilder4.Append(nullString); Console.WriteLine("4. string of new StringBuilder(\"\") append null"); if(sBuilder == null) { Console.WriteLine("string:[is null]"); } else { Console.WriteLine("result:string:[" + sBuilder4 + "],length:[" + sBuilder4.Length + "]"); } } } }結果:
1. string of new StringBuilder()
result:string:[],length:[0]
2. string of new StringBuilder("")
result:string:[],length:[0]
3. string of new StringBuilder() append null
result:string:[],length:[0]
4. string of new StringBuilder("") append nullresult:string:[],length:[0]
Java與C#對於附加null的處理方式不同,Java會直接附加"null"字串,而C#則是附加空字串,
難怪我寫Android的時候,字串長度有時候會怪怪的@@a
沒有留言:
張貼留言