String字符串拼接陷阱
来源:互联网 发布:js中window对象的方法 编辑:程序博客网 时间:2024/04/29 10:14
先看如下程序:
对于一般类对象:
public class A {
int age = 10;
A(){}
}
public class Test{
public static void changeAage(A a){
a.age = 20;
}
public static void main(String[] args){
A a = new A();
changeAage(a);
System.out.println(a.age);
}
结果我们应该都能猜到:是的,值改变为:20 (传递的为a对象的引用(地址))
再看如下程序:
public class Test {
public static void changePara(String s){
s = s+"world";
}
public static void main(String[] args){
String s = "Hello";
changePara(s);
System.out.println(s);
}
}
输出的结果实多少? Helloworld?,
实际上是:Hello
//我们在看以下程序你就知道为什么输出的是Hello,而不是HelloWorld了
public class Test{
public static void main(String[] args){
String s2 = "123";
System.out.println(s2.hashCode());
s2 = s2 + "456";
System.out.println(s2.hashCode());
}
}
结果是:
48690
1450575459
原来他们并不是同一个对象的引用,他们的值发生了变化。
原因:String类型数据其实是final类型,它的值并不能改变!要改变的其值就是:重新生成一个对象。
- String字符串拼接陷阱
- String拼接字符串
- String字符串拼接效率比较
- JAVA8 String.join 字符串拼接
- java的string字符串拼接
- String字符串的拼接问题
- String中的字符串拼接问题
- StringBuilder String string.Concat 字符串拼接速度
- appendChild、拼接string、join三种方式比较字符串拼接
- 字符串拼接时用StringBuffer代替String
- 关于String 拼接字符串的性能问题
- android 资源文件String字符串拼接
- android 资源文件String字符串拼接
- android 资源文件String字符串拼接
- String面试题--字符串的拼接
- String.format()用法大全 (字符串拼接)
- String.format参加字符串拼接大比拼
- String.format参加字符串拼接大比拼
- 微信公众平台开发(5)-上传下载多媒体文件
- 第十一周项目5-当年第几天(循环累加、简单)
- JSP页面跳转方法总结
- 黑马程序员_反射学习心得
- 兼容IE、谷歌Chrome、火狐Firefox的图片上传预览功能
- String字符串拼接陷阱
- 万家灯火黎明照亮了夜空,我们的家服有了新生
- Android 开源开发框架
- NYOJ 364 田忌赛马
- 冰风谷黄日华回复难过福特给她
- 谈学习:合格的编程自学者必须知道的几点
- 多台linux服务器ssh相互无密码访问
- RE2,C++正则表达式库实战
- 有了Swift,iOS开发者为何仍需掌握Objective-C?