码迷,mamicode.com
首页 > 编程语言 > 详细

java中String类型

时间:2015-06-17 02:04:37      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:string类型

String类型是字符串类型。。

  1. 字符串一旦创建不可以在改变。“abc”字符串对象一旦创建,不可以再改成“abcd”

  2. 提升字符串的访问效率:在程序中使用了“缓存”技术。所以在java中所有使用“双引号”括起来的字符串都会在“字符串常量池”中创建一份。字符串常量池在方法区中被存储。

  3. 在程序执行过程中,如果用到某个字符串,例如:“abc”那么程序救护在字符串常量池中去搜索该字符串,如果没有找到则在字符串常量池中新建一个"abc"字符串,如果找到就直接拿过来用。(字符串常量池是一个缓存区,为了提高访问字符串的效率)

public class StringTest01{
	
	public static void main(String[] args){
		
		//创建一个"abc"字符串对象,该对象的内存地址,让s1变量保存。
		//s1是一个引用,s1指向 "abc" 对象.
		String s1 = "abc";
		
		//可以让s1重新指向吗?s1是局部变量,s1前边没有final,所以s1可以重新指向。
		//但是"def"字符串本身不可变.
		s1 = "def";
		
		
		String s2 = "Hello"; //在字符串常量池中新建一个"Hello"字符串对象,该对象不可变
		String s3 = "Hello"; //从字符串常量池中直接拿来用。
		
		System.out.println(s2==s3); //true
		
		//比较两个字符串是否相等,不能用"=="
		String s4 = new String("abc");
		String s5 = new String("abc");
		
		System.out.println(s4==s5); //false
		
		//比较两个字符串是否一致,必须使用String类提供的equals方法.
		System.out.println(s4.equals(s5)); //true
		
		
		//以下程序执行结束之后,会在字符串常量池中创建3个字符串对象
		//"aaa" "bbb"  "aaabbb"
		String s6 = "aaa";
		String s7 = "bbb";
		String s8 = s6 + s7;


本文出自 “gaogaozi” 博客,请务必保留此出处http://hangtiangazi.blog.51cto.com/8584103/1662456

java中String类型

标签:string类型

原文地址:http://hangtiangazi.blog.51cto.com/8584103/1662456

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!