`

Java的String类型学习

    博客分类:
  • Java
阅读更多

这些是从JAVA面试题解惑系列中学到的,记录一下,加深下印象。

 

public class StringTest 
{
	public static final String A = "aa";
	public static final String B = "bb";
	
	public static final String C;
	public static final String D;
	
	static
	{
		C = "cc";
		D = "dd";
	}
	
	public static void main(String[] args) 
	{
		//test1
		String s1 = A + B;
		String t1 = "aabb";
		if (s1 == t1) 
			System.out.println("s1等于t1,它们是同一个对象");
		else 
			System.out.println("s1不等于t1,它们不是同一个对象");
		
		//test2
		String s2 = C + D;
		String t2 = "ccdd";
		if (s2 == t2) 
			System.out.println("s2等于t2,它们是同一个对象");
		else
			System.out.println("s2不等于t2,它们不是同一个对象");
		
		//test3
		String a = "ab";
		String b = "cd";
		String c = "abcd";
		
		String d = "ab" + "cd";
		if (d == c) 
			System.out.println("\"ab\"+\"cd\" 创建的对象 \"加入了\" 字符串池中");
		else 
			System.out.println("\"ab\"+\"cd\" 创建的对象 \"没加入\" 字符串池中");
		
		String e = a + "cd";
		if (e == c) 
			System.out.println(" a  +\"cd\" 创建的对象 \"加入了\" 字符串池中");
		else 
			System.out.println(" a  +\"cd\" 创建的对象 \"没加入\" 字符串池中");
		
		String f = "ab" + b;
		if (f == c) 
			System.out.println("\"ab\"+ b   创建的对象 \"加入了\" 字符串池中");
		else 
			System.out.println("\"ab\"+ b   创建的对象 \"没加入\" 字符串池中");
		
		String g = a + b;
		if (g == c) 
			System.out.println(" a  + b   创建的对象 \"加入了\" 字符串池中");
		else 
			System.out.println(" a  + b   创建的对象 \"没加入\" 字符串池中");
	}
}

//栈(stack):主要保存基本类型(char、byte、short、int、long、float、double、boolean)和对象的引用,
//			  数据可以共享,速度仅次于寄存器(register),快于堆。
//堆(heap): 用于存储对象。 

//**********************************
//输出结果为:
//**********************************
//s1等于t1,它们是同一个对象
//s2不等于t2,它们不是同一个对象
//"ab"+"cd" 创建的对象 "加入了" 字符串池中
// a  +"cd" 创建的对象 "没加入" 字符串池中
//"ab"+ b   创建的对象 "没加入" 字符串池中
// a  + b   创建的对象 "没加入" 字符串池中

  

 

0
0
分享到:
评论
2 楼 yoyo08 2009-06-28  
032615 写道
除了第一个和第三个输出外,能解释下其它几个输出的原因吗?

你到这里下载电子书看吧 http://zangweiren.iteye.com/blog/241218 上面有很好的解释 我就是看的这个电子书
1 楼 032615 2009-06-28  
除了第一个和第三个输出外,能解释下其它几个输出的原因吗?

相关推荐

    java学习-java中的String类型

    java学习-java中的String类型

    JNI开发Java调用C传递int、String、Array类型参数

    JNI开发Java调用C传递int、String、Array类型参数;...String类型(https://blog.csdn.net/niuba123456/article/details/80977247); Array类型:(https://blog.csdn.net/niuba123456/article/details/80977615);

    java String Vector简单初学者代码

    Java中的String、Vector和Scanner是三个非常基础且重要的概念,对于初学者来说,理解它们的用法和原理是学习Java编程的关键步骤。 首先,我们来深入理解`String`类。在Java中,`String`是一个不可变的字符序列,这...

    String1.java

    在Java编程语言中,字符串处理是一项非常重要的技能,无论是进行数据处理还是用户交互,字符串都是一个不可或缺的数据类型。本篇将基于提供的`String1.java`代码示例,深入探讨如何创建并操作字符串对象。 #### 一...

    Java string类型转换成map代码实例

    Java String 类型转换成 Map 代码实例 Java String 类型转换成 Map 是一种常见的数据转换方式,特别是在处理 JSON 数据时。下面我们将详细介绍 Java 中 String 类型转换成 Map 的实现方式。 为什么需要将 String ...

    JAVA数据类型思维导图

    在Java编程语言中,数据...通过以上内容,我们可以看到这个“JAVA数据类型思维导图”资源对于Java初学者来说非常有价值,它涵盖了Java编程的基础,并提供了辅助学习的视觉工具。结合实际操作,可以有效地提升编程技能。

    java学习路线(鱼皮)

    在Java入门阶段,学习者需要掌握Java基础语法、数据类型、流程控制、数组、面向对象、方法重载、封装、继承、多态、抽象类、接口、枚举、常用类、String、日期时间、集合类、泛型、注解、异常处理、多线程、IO流、...

    JavaString、StringBuffer、StringBuildermd,学习代码

    例如,`2196407-20210422152310204-137300783.png`可能展示了`String`、`StringBuffer`和`StringBuilder`的性能对比测试结果,而`assets\函数式接口类型.png`可能列出了Java中的常见函数式接口。 总之,掌握`String...

    JAVA数据类型转换.pdf

    ### JAVA数据类型转换详解 #### 一、引言 在Java编程中,数据类型转换是一项基本且重要的技能。本文档将详细介绍Java中的数据类型转换,包括简单数据类型之间的转换、字符串与其他数据类型的转换以及一些实用的...

    从java到c++,适合java程序员快速学习c++

    * 字符串类型用 string 表示,与 Java 中的 String 类型非常相似,但有以下几点不同: 1. C++ 字符串存储 ASCII 码字符,而不是标准码 Unicode 字符。 2. C++ 字符串是可以被修改的,而 Java 字符串的内容是不可...

    Java基础复习(内附String中equals与==区别的分析)

    首先,`==`运算符在Java中用于比较基本类型(如int、char)的值,而在比较对象时,它实际上是检查两个引用是否指向内存中的同一个位置,即是否为同一个对象实例。例如: ```java String str1 = new String("Hello")...

    Java编程规范学习总结

    ### Java编程规范学习总结 #### 变量的命名规则 在Java编程中,变量的命名遵循一定的规则: 1. **变量名中不能包含空格**:例如,`int myVariable` 是合法的,但 `int my variable` 则不是。 2. **变量名区分大小...

    java 泛型类的类型识别示例

    在Java编程语言中,泛型(Generics)是一种强大的特性,它允许我们在编写代码时指定容器(如集合)可以存储的数据类型。这提高了代码的安全性和效率...通过学习和理解这些示例,你可以更好地掌握Java泛型类的类型识别。

    面试题:Java String类常见操作和用法

    Java String类是Java编程语言中的核心类,它用于表示和操作字符串。由于字符串在编程中极为常见,理解和熟练掌握String类的用法至关重要。在面试中,Java String类的操作和用法经常成为考察的重点。 首先,Java ...

    java 解析Excel 并判断解析的数据类型__Eclipse工程

    在Java编程环境中,解析Excel文件是一项常见的任务,特别是在数据处理、数据分析或自动化测试等领域。...通过学习和理解这个项目,开发者可以掌握处理Excel数据的基本技巧,进一步提升自己的Java开发能力。

    Java JDK 7学习笔记 PDF

    1. **泛型改进**:在JDK 7中,泛型的使用更加灵活,引入了类型推断(Type Inference)特性,通过`<>`语法糖使得创建泛型实例更为简洁,例如`List<String> list = new ArrayList();` 2. **钻石操作符**:在创建带...

    详解Java String字符串获取每一个字符及常用方法

    "Java String字符串获取每一个字符及常用方法" 本文主要介绍了Java String字符串获取每一个字符及常用方法,涵盖了字符串的基本操作、获取每一个字符的方法、substring方法、trim方法、charAt方法等,并通过实例...

    JAVA核心内容学习

    总的来说,掌握Java的核心内容,包括`String`与`StringBuffer`的使用、输入输出处理、以及基本数据类型包装类的应用,是成为一名合格的Java开发者的基础。这些知识点在实际编程中频繁使用,理解并熟练运用它们将极大...

    java数据类型汇总

    Java 数据类型是编程的基础,了解并熟练掌握它们的特性及转换方式对于任何Java开发者来说都至关重要。Java的数据类型主要分为两大类:基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)...

    java学习心得一些笔记

    Java学习心得笔记主要涵盖了几大知识点,包括运算符、Integer类、引用类型、数组、多维数组、字符串类。下面将详细阐述这些内容。 1. **运算符**: 在Java中,运算符包括移位运算符。`是左移运算符,将二进制数向...

Global site tag (gtag.js) - Google Analytics