Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。
原始类型封装类
boolean -->Boolean
char --->Character
byte -->Byte
short -->Short
int -->Integer
long -->Long
float -->Float
double -->Double
引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。同时为了面向对象操作的一致性,这些基本类型都有相应的封装类型:Integer、Short、Long、Byte、Float、Double、Character等。
因为封装类型是对象,所以可以进行相应的很多对象能力函数操作,这样就可以提供很多基本类型难以完成的工作的完成和实现。
你可以通过以下方式来声明该类型。
int a,a为int类型的变量
char a,a为char类型的
String对象
1. 首先String不属于8种基本数据类型,String是一个对象。
因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。
2. new String()和new String(“”)都是申明一个新的空字符串,是空串不是null;
3. String str=”punkll”;
String str=new String (“punkll”);的区别:
在这里,我们不谈堆,也不谈栈,只先简单引入常量池这个简单的概念。
常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量。
看例1:
String s0=”punkll”;
String s1=”punkll”;
String s2=”punk” + “ll”;
System.out.println( s0==s1 );
System.out.println( s0==s2 );
结果为:
true
true
首先,我们要知结果为道Java会确保一个字符串常量只有一个拷贝。
因为例子中的s0和s1中的”punkll”都是字符串常量,它们在编译期就被确定了,所以s0==s1为true;而”punk”和”ll”也都是字符串常量,当一个字符串由多个字符串常量连接而成时,它自己肯定也是字符串常量,所以s2也同样在编译期就被解析为一个字符串常量,所以s2也是常量池中”punkll”的一个引用。
所以我们得出s0==s1==s2;
用new String() 创建的字符串不是常量,不能在编译期就确定,所以new String() 创建的字符串不放入常量池中,它们有自己的地址空间。
看例2:
String s0=”punkll”;
String s1=new String(”punkll”);
String s2=”punk” + new String(“ll”);
System.out.println( s0==s1 );
System.out.println( s0==s2 );
System.out.println( s1==s2 );
结果为:
false
false
false
例2中s0还是常量池中”punkll”的应用,s1因为无法在编译期确定,所以是运行时创建的新对象”punkll”的引用,s2因为有后半部分new String(“ll”)所以也无法在编译期确定,所以也是一个新创建对象”punkll”的应用;明白了这些也就知道为何得出此结果了。
分享到:
相关推荐
java基础数据类型。
非常明了的介绍了JAVA的基本数据类型,为以后打好坚实基础。
Java基础数据类型及操作实验报告 Java是一种面向对象的编程语言,具有强大的数据类型系统。了解Java中的基本数据类型及其操作是java编程的基础。本实验报告将介绍Java中的基本数据类型、数据类型转换、控制台输入...
java基本数据类型和数组,java编制0-255之间的UNICODE编码表
Java是一种广泛使用的面向对象的编程语言,其设计...在实际编程中,理解并熟练掌握这些基本数据类型及其操作,是编写高效、稳定Java代码的基础。通过不断练习和实践,开发者可以更好地运用这些知识解决各种编程问题。
java基本数据类型
JAVA的基本数据类型
java基本数据类型自动转换以及强制转换,类型提升问题
基本数据类型是 Java 语言的基础,理解基本数据类型是学习 Java 的关键。 Java 基本数据类型有八种,它们分别是 byte、short、int、long、float、double、boolean 和 char。这八种基本数据类型可以分为四类:整数...
在实际编程中,理解并熟练掌握这些基本数据类型和表达式是编写Java代码的基础,它们构成了程序的基本结构和逻辑。在编写程序时,合理地选择数据类型、正确地使用运算符和表达式,以及有效地管理变量和常量,能够提高...
这些基本数据类型是 Java 语言的基础,理解它们对于学习 Java 语言非常重要。 2.1 标识符与关键字 在 Java 中,标识符是指变量名、方法名、类名等名称。Java 中的标识符可以由字母、下划线、美元符号、数字构成,...
其中,基本数据类型是最基础且最常用的元素之一。它们直接存储值而不是对象引用,因此效率较高。Java中的每种基本数据类型都有对应的封装类,这些封装类不仅提供了将基本数据类型转换为对象的能力,而且还提供了许多...
java基本数据类型模型
在Java程序设计中,基本数据类型和基本操作是编程的基础。本篇将详细阐述这些关键概念。 2.1 引言 在Java中,程序是由数据和对数据进行操作的指令组成的。基本数据类型是构建程序的基础,它们包括数值、字符和布尔...
本资源“JAVA数据类型思维导图”提供了一种直观的方式来理解和记忆Java中的数据类型,包括基本数据类型和引用数据类型。下面将对这两个主要的数据类型进行详细解释。 1. 基本数据类型(Primitive Data Types) - ...
Java的基本数据类型是Java程序的基础构建块。掌握这些类型的特点及其使用方法对于编写高效、健壮的程序至关重要。通过本文的介绍,相信读者已经对Java的内置数据类型有了较为全面的认识,并能够根据实际需求选择合适...