[Java]Java学习笔记(一)——基本内置类型
2015-02-25 19:12
239 查看
基本内置类型
基本数据类型
整型int short long byte
浮点型float double
字符型char
布尔类型bollean
基本构造类型
数组
枚举类型与类类型
穿插一些说明。
参考了《Java核心技术 · 卷1 · 基础知识》(第九版)及《疯狂Java讲义》(第二版)
Integer, Short, Long, Byte, Float, Double, Character 为对应的类类型。
java里的数值类型都是有符号的。
对于整形常量,默认是 int 型,十进制数。
可通过加后缀 L 声明为长整型 long,如 2L。
可通过加前缀 0x 声明为十六进制数,如 0x2;
加前缀 0 声明为八进制数,如 02。
java7+ 加前缀 0b 声明为二进制数,如 0b01。
java7+ 常量还可以用下划线(_)进行分隔,如 1_000_000,编译器会自动去除下划线。
对于浮点型常量,默认是 double 型。
可以使用十进制数表示或科学计数法表示,如 512.1 或 5.121E2。
可通过加后缀 F 声明为 float 型(单精度浮点型);
也可以加后缀 D 强调为 double 型(双精度浮点型)。
java的浮点数遵循 IEEE 754 标准:
说明:按照默认规则,由右往左位号依次为0, 1, 2, …,最右边称为 LSB(Least Significant Bit,最低有效位), 最左边称为 MSB(Most Significant Bit,最高有效位)。
java还有三个特殊的值,分别是 POSITIVE_INFINITY(正无穷大),NEGATIVE_INFINITY(负无穷大)和 NAN(不是一个数字),作为 Double 和 Float 的成员。
但一般不直接使用,而是采用如下方式
java里的引用类型都不能直接使用==进行比较,这样做会被当作是比较引用的地址是否相同。
如果对精确度要求很高,则应当使用 BigDecimal 类。
这与其他的语言不同,一般的编程语言里 char 都是单字节的 ascll 码,因此如果使用 java 里的 char, 就需要特殊操作,不提倡直接操作,建议用 String 类间接操作。
即使使用 String 类,仍然操作起来要比其他语言麻烦并且容易出错。
在 java 里,一个 utf-16 方式表示的字符称为一个代码单元,
一个代码单元包括两个代码点。
Unicode代码单元可以用十六进制表示,如 \u005B 代表 ‘[‘。
一些转义字符:
int[] a;
输出数组的内容可以使用 for(int element : a) 或 Arrays.toString(a) 方式输出。
java中数组的长度可以为 0。
基本数据类型
整型int short long byte
浮点型float double
字符型char
布尔类型bollean
基本构造类型
数组
枚举类型与类类型
基本内置类型
以下按基本数据类型、基本构造类型两个部分对java的类型做一个简单描述。穿插一些说明。
参考了《Java核心技术 · 卷1 · 基础知识》(第九版)及《疯狂Java讲义》(第二版)
基本数据类型
java的基本数据类型有 int, short, long, byte, float, double, char, boolean。Integer, Short, Long, Byte, Float, Double, Character 为对应的类类型。
java里的数值类型都是有符号的。
整型:int, short, long, byte
类型 | 存储需求 | 取值范围 |
---|---|---|
int | 4 bytes | −231-2^{31} ~ 231−12^{31}-1 |
short | 2 bytes | −215-2^{15} ~ 215−12^{15}-1 |
long | 8 bytes | −263-2^{63} ~ 263−12^{63}-1 |
byte | 1 bytes | −27-2^{7} ~ 27−12^{7}-1 |
可通过加后缀 L 声明为长整型 long,如 2L。
可通过加前缀 0x 声明为十六进制数,如 0x2;
加前缀 0 声明为八进制数,如 02。
java7+ 加前缀 0b 声明为二进制数,如 0b01。
java7+ 常量还可以用下划线(_)进行分隔,如 1_000_000,编译器会自动去除下划线。
浮点型:float, double
类型 | 存储需求 | 取值范围 |
---|---|---|
float | 4 bytes | 大约 ±3.40282347E+38F\pm 3.402 823 47E+38F |
double | 8 bytes | 大约 ±1.79769313486231570E+308\pm 1.797 693 134 862 315 70E+308 |
可以使用十进制数表示或科学计数法表示,如 512.1 或 5.121E2。
可通过加后缀 F 声明为 float 型(单精度浮点型);
也可以加后缀 D 强调为 double 型(双精度浮点型)。
java的浮点数遵循 IEEE 754 标准:
类型 | 符号位 | 指数位 | 尾数位 |
---|---|---|---|
float | b31 | b23 ~ b30 | b0 ~ b22 |
double | b63 | b52 ~ b62 | b0 ~ b51 |
java还有三个特殊的值,分别是 POSITIVE_INFINITY(正无穷大),NEGATIVE_INFINITY(负无穷大)和 NAN(不是一个数字),作为 Double 和 Float 的成员。
但一般不直接使用,而是采用如下方式
if(Double.isNaN(x))
java里的引用类型都不能直接使用==进行比较,这样做会被当作是比较引用的地址是否相同。
如果对精确度要求很高,则应当使用 BigDecimal 类。
字符型:char
java的 char 类型为 2字节的 utf-16 码。这与其他的语言不同,一般的编程语言里 char 都是单字节的 ascll 码,因此如果使用 java 里的 char, 就需要特殊操作,不提倡直接操作,建议用 String 类间接操作。
即使使用 String 类,仍然操作起来要比其他语言麻烦并且容易出错。
在 java 里,一个 utf-16 方式表示的字符称为一个代码单元,
一个代码单元包括两个代码点。
Unicode代码单元可以用十六进制表示,如 \u005B 代表 ‘[‘。
一些转义字符:
转义序列 | 名称 | Unicode值 |
---|---|---|
\b | 退格 | \u0008 |
\t | 制表 | \u0009 |
\n | 换行 | \u000a |
\r | 回车 | \u000d |
\” | 双引号 | \u0022 |
\’ | 单引号 | \u0027 |
\\ | 反斜杠 | \u005c |
布尔类型:bollean
取值为 true 或 false,对应逻辑真和逻辑假。基本构造类型
数组
与 C# 的语法基本相同,int[] a;
输出数组的内容可以使用 for(int element : a) 或 Arrays.toString(a) 方式输出。
java中数组的长度可以为 0。
枚举类型与类类型
该部分的内容将独立出来。相关文章推荐
- java学习笔记(六)----对象的类型转换, 匿名内置类
- java核心技术学习笔记2---基本数据类型
- Java基本类型学习笔记
- Java学习笔记(1)——基本数据类型
- Java学习笔记之一:Java基本数据类型
- Java学习笔记四。设计模式、基本数据类型、包装类、异常、断言、包、访问权限、命名规范、jar
- 学习笔记之javaweb基础:jsp基本语法,内置对象,对JavaBean的操作语法
- JAVA学习笔记22——基本数据类型包装类+自动装、拆箱+初识Date类
- Core Java 8 学习笔记(二)Java的基本数据类型
- Core Java 学习笔记——2.基本数据类型&类型转换
- Java基础学习笔记(一)基本数据类型
- Java基本类型学习笔记
- Java学习笔记7 - 基本数据类型
- JAVA学习笔记(一) - 基本数据类型
- java学习笔记之---java基本类型
- JAVA学习笔记(2)基本数据类型和基本操作
- 【Java学习笔记】基础知识学习1【基本输出,数据类型,基础运算符号】
- Java学习笔记:基本类型、字符串及控制台输入输出
- [学习笔记]Java基本数据类型包装类
- Effective Java 学习笔记(第49条:基本类型优先于装箱基本类型)