java中字符串常见问题

字符串的有关问题

   1)new String (“A”);实际上是创建了两个对象, 一个在常量池中,另一在Heap中。

   2)常量池 String =””  这里面无论是字母还是数字都是相当于常量池,在编译时期就已经确定了。他们指向的是同一个对象!

   3)若 String s= s1+s2即时 s1和 S2是编译时期的确定常量,但是因为在编译时期s1和s2 不确定所以,s 并不是常量池中的,而是创建了新对象!!。

3.String 内部使用Private final char Value创建的字符串,因此当String改变时,等同于创建了一个新的对象!而StringBuffer对String类型改变是操作的同一个对象.

4.String 作为形参传入,只是在内部复制,不会对方法外的字符串产生影响。(推荐做法画图 处理StringBuffer和String形参引用分析对实际值操作)。

5.Int 类型无法直接转成String

6.Str =”helloword”; str+=’a’; 这是正确的! 但是加字符串就要用双引号。

7.StringBuffer 是线程安全的,StringBuilder不是。

8.substring 方法 截取从0开始有头无尾。

8.SubString() 截取字符串方法,源码是new了一个新的字符串,并且是按char计算的。

猜你喜欢

转载自blog.csdn.net/qq_36055407/article/details/81190384