java基础入门-你不知道的string-不可改变性与编译器优化
来源:互联网 发布:linux根目录设置多大 编辑:程序博客网 时间:2024/05/22 01:49
1.不可改变性
package com.ray.teststring;/** * 不可改变性 * * @author ray * @since 2015-04-19 * @version 1.0 * */public class UnChangabel {public static void main(String[] args) {String greeting = "Hello";String greeting2= greeting;System.out.println(greeting.equals(greeting2));greeting = greeting.substring(0, 3) + "p!";System.out.println(greeting.equals(greeting2));}}
true
false
当一个字符串做拼接或者分割操作的时候,他是重新new一个新的对象出来,而不再是原来的那个对象
2.编译器优化
编译器可以让字符串“共享”
可以理解为:各种字符串都是放在一个存储池里面。当对字符串操作,编译器会先做一遍,然后把所有的结果都存储起来,然后再输出结果。
package com.ray.teststring;/** * 编译器优化 * * @author ray * @since 2015-04-19 * @version 1.0 * */public class CompilerOptimize {public static void main(String[] args) {//实验1String strA = "help";String strB = strA.substring(0, 2);String strC = strA.substring(2, 4);String strD = new String(strB + strC);System.out.println(strA.equals(strD));}}
输出的结果是:
true
0 0
- java基础入门-你不知道的string-不可改变性与编译器优化
- String的不可变性
- String的不可变性
- String的不可变性
- String的不可变性
- java之String对象的不可变性
- JAVA的不可变类(immutable)机制与String的不可变性
- JAVA不可变类(immutable)机制与String的不可变性
- JAVA不可变类(immutable)机制与String的不可变性
- JAVA不可变类(immutable)机制与String的不可变性
- JAVA不可变类(immutable)机制与String的不可变性
- 图解Java String不可变性
- Java基础:String不可变性和final修饰
- String类的不可变性
- String 类的不可变性
- String对象的不可变性
- Android中的java基础(三)——String的不可变性
- 翻译连载 | JavaScript轻量级函数式编程-第6章:值的不可变性 |《你不知道的JS》姊妹篇
- kyeremal-网络流24题T2-太空飞行计划问题
- 第3题
- swing jframe 框架面板知识
- 路由器---更改交换机
- 《c primer plus》编程练习回顾-第十一章(上)
- java基础入门-你不知道的string-不可改变性与编译器优化
- 2015年第六届蓝桥杯本科B组C++省赛个人题解
- nagios插件之系统打开文件数监控
- java学习之try catch finally中的return
- 第三章5 找出5个学生中成绩最高者
- CSS
- Cordova 3.x 基础(9) -- UI框架jQuery Mobile
- 构造函数有没有返回值?
- HDU-OJ---N皇后问题(DFS)