String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。
来源:互联网 发布:如何消灭软件红蜘蛛 编辑:程序博客网 时间:2024/05/17 03:50
转自:http://zhidao.baidu.com/link?url=bBZza1Y9e2YalzH7WXG8UEvwE7GVH5DPr4ajjwCJS03R5SNEfheyuAvOGIcUIHzzR6PnZAXfcyYR7AaSSz0rZa
String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。 如果需要对字符串做很多修改,那么应该选择使用StringBuffer & StringBuilder 类。
这句话的理解:
AVA中字符串类型String是不允许改变其内容的,那么请问简要谈谈下列语句是如何运行的:String s=new String("ABC");s=s+"abc";
确实,Java中的String类型确实是不允许改变其内容的,String类型的对象一旦建立,将在堆内存当中占据一个固定的内存空间,String类型的对象无法改变。 但是你在运算的时候又发现,你定义的String类型的s变量又是可以进行连接的,如"abc"+"def"最终得到的s的值是"abcdef",这似乎看着String类型的对象又是可以改变的,这是自相矛盾吗? 其实,String对象不允许改变内容是正确的,但是可以改变定义的String类型的变量指向,你定义的String s其实是一个指向String对象的指针,如果不存在对象就为null。 如果你定义了: String s="abc";那么将创建一个内容为"abc"的String对象,并且s指向这个对象。一旦s=s+"abc";这样的操作,那么将创建一个新的String对象来存放新的内容,原先的对象依旧在内存中,但是s不在指向它,那么这个对象就会成为垃圾内存,在某一个特定的时刻有Java虚拟机回收。 如果希望存放的String可以调整大小,而不是创建新的内存来存放新的对象,可以使用StringBuffer这个类来存放。这个内存可以调整大小。而不会抛弃。实例:import java.util.Date; public class test{public static void main(String[] args) {String s=new String("ABC");s=s+"abc";System.out.println(s);}}
1 0
- String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。
- java中String类与变量相加解释一旦创建了String对象,那它的值就无法改变了
- String的特点--一旦被创建就不能被改变
- java的string类关于字符串一旦被初始化,就不可以被改变的
- String 类是不可改变的解析
- String的特点一旦被赋值就不能改变图解
- String对象不可改变的特性
- String对象不可改变的特性
- String对象不可改变的特性
- 字符串与正则表达式1、字符串 String类对象是不可改变的,对于String对象的重新赋值在本质上是重新创建了一个String对象并将新值赋予该对象,其方法ToString对性能的提高并非很显著。
- 6.7String是内容不可改变,还是对象不可改变
- java学习日记_59:String的特点一旦被赋值就不能改变的理解
- 字符串一旦初始化就不可以改变
- 起来是数组,可是它真正改变了a[]里面元素的值了
- 是那行代码,彻底改变了程序员的世界?
- 《java入门》第一季之类(String类字符串一旦被赋值就没法改变)
- 动态语言,可以随时改变类的属性、方法,所以覆写和重载的重要性就降低了
- Java String类型值真的不可改变吗?
- p3:An open source pcap packet and NetFlow file analysis tool using Hadoop MapReduce and Hive.
- JavaWeb开发之数据共享和作用域对象(跟着龙哥学JavaWeb)
- java学习笔记(十八)
- 程序自重启
- mssql 触发器创建
- String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。
- web前端开发初学者十问集锦(4)
- cJSON简介
- Application Components
- WIN常用快捷键
- Java枚举的七种常见用法
- centos7安装docker最新版
- C++ vector多维数组初始化及清零
- java如何连接与断开SQL server2008数据库