String对象作为参数传递给函数的问题 String是final类String对象是不可以改变的! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String类是不可变对象,一个String对象在创建时状态就固定下来,以后是无法改变的。而StringBuffer是可变对象,对象被创建后,可以通过append等方法加以改变。在java中可变对象、不可变对象是非常重要的概念。 你的Fcution没有定义A!,这个程序好像不能运行吧! To:lovelymaomao(小老鼠) 固然String是不可变的(immutable),但不能通过String类是final class来推导。To 楼主: 因为String是不可变的(immutable),它的操作将产生一个新的对象,因此以上函数,得不到你预期的效果,可以改成以下代码 strDst = strDst.concat("hello world"); return strDst.length() / 2; http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html ant_bug():你的方法也不行啊,我大概懂了,谢谢大家! 诸位楼上说的都没错,补充一点。对于频繁做字符窜变更时,要尽量使用StringBuffer,如程序中拼SQL文,电文解码等。因为String 对象不可变,每次赋新值仍然是那个对象。String a = "1";a = "2"; a = "3" -------对象不变若要生成新对象就必须new, a = new String("4");------新对象,原来的成了垃圾 泛型问题 LVS是什么,某公司宣讲会上说谁知道谁就可以进他们公司。 java定时器 windows任务计划 选择谁 关于内部类的问题 问一个幼稚的问题 关于打印的问题! 又是几个问题JList XYLayOut applet下 已有《Java 2 核心技术 卷I:原理》第四版,有必要买第五版吗? --------请大家进来谈谈您所从事的有关java的工作,以及以后的打算-------- 一个非常简单的问题 ==和equals() 高手请进,关于面试时常问的几个问题
在java中可变对象、不可变对象是非常重要的概念。
,这个程序好像不能运行吧!
固然String是不可变的(immutable),但不能通过String类是final class来推导。To 楼主:
因为String是不可变的(immutable),它的操作将产生一个新的对象,因此以上函数,得不到你预期的效果,可以改成以下代码
strDst = strDst.concat("hello world");
return strDst.length() / 2;
你的方法也不行啊,我大概懂了,谢谢大家!
String a = "1";a = "2"; a = "3" -------对象不变
若要生成新对象就必须new, a = new String("4");------新对象,原来的成了垃圾