《java入门》第一季之类(String类字符串一旦被赋值就没法改变)
2016-05-09 13:07
429 查看
毫无疑问,String类是java里面最重要的类之一。因此它有很多方法需要了解和掌握。
字符串一旦被赋值,值就不能发生改变:
字符串到底创建几个对象问题,再以后专题中再做详细整理。
字符串一旦被赋值,值就不能发生改变:
package cn.itcast_02; /* * 字符串的特点:一旦被赋值,就不能改变。 */ public class StringDemo { public static void main(String[] args) { String s = "hello";//hello是在字符串常量池中待着的。赋值hello后就没法在改变了。 s += "world"; System.out.println("s:" + s); // helloworld } } 整个过程开辟了三个空间。通过图片看一下赋值过程。
/* * String s = new String(“hello”)和String s = “hello”;的区别 * 前者会创建2个对象(hello在常量池中创建对象,再在堆内存中创建(new出来的),然后new出来的对象指向字符串常量池中的对象),后者创建1个对象, 直接指向字符串常量池中。 * * ==:比较引用类型比较的是地址值是否相同 * equals:比较引用类型默认也是比较地址值是否相同,而String类重写了equals()方法,比较的是内容是否相同。 */ public class StringDemo2 { public static void main(String[] args) { String s1 = new String("hello"); String s2 = "hello"; System.out.println(s1 == s2);// false System.out.println(s1.equals(s2));// true } }
/* * 看程序写结果 */ public class StringDemo3 { public static void main(String[] args) { String s1 = new String("hello"); String s2 = new String("hello"); System.out.println(s1 == s2);// false System.out.println(s1.equals(s2));// true String s3 = new String("hello"); String s4 = "hello"; System.out.println(s3 == s4);// false System.out.println(s3.equals(s4));// true String s5 = "hello"; String s6 = "hello"; System.out.println(s5 == s6);// true System.out.println(s5.equals(s6));// true } }
字符串到底创建几个对象问题,再以后专题中再做详细整理。
相关文章推荐
- 《java入门》第一季之类(String类字符串一旦被赋值就没法改变)
- 160506、Spring mvc新手入门(11)-返回json 字符串的其他方式
- Java IO的RandomAccessFile的使用
- eclipse导入JDK源码
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- 【Spring】SpringMVC整合JPA
- 重新学javaweb---过滤器应用--30天自动登录
- Java开发Spark程序
- Java基础7
- JAVA语言之有序矩阵查找
- eclipse 按alt+/没有提示信息
- Eclipse 学习笔记
- Java 超简单实现发送邮件(可动态控制发送人数)
- 【Leetcode】:326. Power of Three 问题 in JAVA
- java同步synchronized
- java同步synchronized
- springMVC 与 struts+hibernate+spring优缺点
- PropertyPlaceholderConfigurer扩展---spring读取properties配置文件
- SpringBoot动态创建Bean
- 【第四章】 资源 之 4.1 基础知识 ——跟我学spring3