温故而知新(一)Java基础:基本数据类型
2017-08-16 10:16
218 查看
java基本数据类型
变量是用来申请内存的存储值。变量创建的时候需要在内存中申请空间。内存管理系统根据变量的类型为变量分配存储空间,被分配的空间只能用来储存该类型的数据。java中有两大数据类型:内置数据类型、引用数据类型。
内置数据类型
java一共八种基本数据类型,4种整型、2种浮点型1种字符、1种布尔型
float的有效长度是7位:
321.022f
double的有效长度是15位:
321.022d 321.215//不带任何标志的浮点型数据,系统默认是 double 类型。
Test:
public class Test { public static void main(String[] args) { System.out.print("Byte.MAX_VALUE="+Byte.MAX_VALUE+"\n"+"Byte.MIN_VALUE="+Byte.MIN_VALUE+"\n"); System.out.print("Short.MAX_VALUE="+Short.MAX_VALUE+"\n"+"Short.MIN_VALUE="+Short.MIN_VALUE+"\n"); System.out.print("Long.MAX_VALUE="+Long.MAX_VALUE+"\n"+"Long.MIN_VALUE="+Long.MIN_VALUE+"\n"); System.out.print("Integer.MAX_VALUE="+Integer.MAX_VALUE+"\n"+"Integer.MIN_VALUE="+Integer.MIN_VALUE+"\n"); System.out.print("Float.MAX_VALUE="+Float.MAX_VALUE+"\n"+"Float.MIN_VALUE="+Float.MIN_VALUE+"\n"); System.out.print("Double.MAX_VALUE="+Double.MAX_VALUE+"\n"+"Double.MIN_VALUE="+Double.MIN_VALUE+"\n"); System.out.print("Character.MAX_VALUE="+(int)Character.MAX_VALUE+"\n"+"Character.MIN_VALUE="+(int)Character.MIN_VALUE+"\n"); } }
/** *日志信息: */ Byte.MAX_VALUE=127 Byte.MIN_VALUE=-128 Short.MAX_VALUE=32767 Short.MIN_VALUE=-32768 Long.MAX_VALUE=9223372036854775807 Long.MIN_VALUE=-9223372036854775808 Integer.MAX_VALUE=2147483647 Integer.MIN_VALUE=-2147483648 Float.MAX_VALUE=3.4028235E38 Float.MIN_VALUE=1.4E-45 Double.MAX_VALUE=1.7976931348623157E308 Double.MIN_VALUE=4.9E-324 Character.MAX_VALUE=65535 Character.MIN_VALUE=0
引用类型
1.在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型。变量一旦声明后,类型就不能被改变了。
2.对象、数组都是引用数据类型。
3.所有引用类型的默认值都是null。
4.一个引用变量可以用来引用与任何与之兼容的类型。
例如:A a=new A(“bice”);
Java语言支持一些特殊的转义字符序列
数据类型的转换
主要分为:自动转换、强制性转换自动转换(是从低——>高)
注意:必须满足转换前的数据类型的位数要低于转换后的数据类型
byte,short,char-> int -> long -> float -> double
数据类型转换必须满足如下规则:
1. 不能对boolean类型进行类型转换。
2. 不能把对象类型转换成不相关类的对象。
3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
4. 转换过程中可能导致溢出或损失精度,例如:
int i =128; byte b = (byte)i; //因为byte类型时8位,最大值为127,所以当强制转换为int类型值128时候就会导致溢出。
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,
(int)23.7 == 23; (int)-45.89f == -45
强制性转换(必须在代码中声明)
int x = (int)14.76 + (int)11.21; // 丢失精度 System.out.print("强制性转换:"+x); //日志:强制性转换25
相关文章推荐
- Java语言基础--基本数据类型与运算符
- Java基础复习:基本数据类型的包装类
- JAVA基础-数据类型及基本数据类型的存储空间
- 黑马程序员_java基础一(标识符,关键字,基本数据类型,运算符)
- java基础--->基本数据类型之间的转换
- Java语言基础--基本数据类型与运算符
- Java基础重温(二)-Java基本数据类型
- 黑马程序员_Java基础1_(标示符、关键字、基本数据类型、运算符)
- java语言基础——3基本数据类型
- JAVA基础学习总结---原码、补码、反码以及基本数据类型
- 黑马程序员-JAVA基础-基本数据类型对象包装类
- 【学习笔记三】最基本的JAVA基础[数据类型,运算符]
- Java基础--->03.Java的8种基本数据类型。
- 【Java学习笔记】基础知识学习1【基本输出,数据类型,基础运算符号】
- Java笔记之语言基础_基本数据类型
- java基础-->基本数据类型
- java基础——基本数据类型
- java基础复习1--基本数据类型、运算符号、表达式语句与程序结构
- 黑马程序员——java基础之基本数据类型及操作方法
- Java基础学习笔记(一)基本数据类型