发表时间:2022-03-25来源:网络
在Java语言中,所有的变量在使用前必须声明。
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
基本数据类型存储在栈上,栈上存取速度最快。
数据类型字节数取值范围(十进制)默认值包装类byte1-27~(27-1)0Byteshort2-215~(215-1)0Shortchar2\u0000~\uffff\u0000Characterint4-231~(231-1)0Integerlong8-263~(263-1)0LLongfloat43.4E-38~3.4E380.0FFloatdouble81.7E-308~1.7E3080.0DDoubleboolean未定义true/falsefalseBooleanfloat和double的最小值和最大值都是以科学记数法的形式输出的,结尾的"E+数字"表示E之前的数字要乘以10的多少次方。比如3.14E3就是3.14 × 103 =3140,3.14E-3 就是 3.14 x 10-3=0.00314。
实际上,Java中还存在另外一种基本类型void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。
包装类均位于java.lang包,基本数据类型所对应的包装类已在上表中列出。
包装类的主要用途:
作为和基本数据类型对应的类型存在,使基本类型也可以成为对象,方便涉及到对象的操作。包含每种基本数据类型的相关属性,如最大值、最小值等,以及相关的操作方法。以Integer为例:
一、装箱(ValueOf()方法 装箱)
二、拆箱(intValue()方法 拆箱)
int i2 = i;//intValue方法 拆箱 int i3 = (int)i;//显示拆箱对于如下两段代码以及运行结果进行讨论:
Integer i1 = 127; Integer i2 = 127; System.out.println(i1==i2); System.out.println(i1.equals(i2));运行结果:
运行结果
在讨论之前我们先来了解一下equals()方法:
equals的比较方法
查看ValueOf()方法得知
对于第一段程序:i1=127,i2=127,满足这个if条件,i1i2均在缓存中,比较时i1i2均指向同一个地址,比较(i1.equals(i2))时比较的是两个对象的值,所以运行结果都为true。
对于第二段程序:i1=128,i2=128,不满足这个if条件,i1、i2均new了一个新的对象,new出的对象放在堆中不同的地址下,所以运行结果为false。比较(i1.equals(i2))时比较的是两个对象的值,所以运行结果为true。
不能对boolean类型进行类型转换。
byte char
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
(int)23.7 == 23; (int)-45.89f == -45在java中类型可分为两大类:值类型与引用类型。值类型就是上述基本数据类型,而引用类型是指除了值类型之外的所有类型。引用类型是由类型的实际值引用(类似于C/C++的指针)表示的数据类型。如果为某个变量分配一个引用类型,则该变量将引用(指向)原始值。引用类型包括类,接口,委托和装箱值类型。基本类型只有一块在栈中的存储空间,引用类型有两块存储空间分别在栈,堆中。
下面我们用实际例子来深入理解一下引用类型:
1.
结果为true。
2.
结果为false。
3.
结果为false。
4.
结果为false。
5.
结果为false。
6.
结果为false。
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务