2019年的第一天,从今天起开始写博客啦!一点一滴开始重新学习一遍Java,正所谓好记性不如烂键盘..咳开始了!
- Java是一种强语言类型,这就意味着必须为每一个变量声明一种类型。在Java中,一共有八种基本类型(primitive type),其中有4种整形,2种浮点型,1种用于表示Unicode编码的字符单元的字符类型char和1种用于表示真值的boolean类型。
- Java有一个能够表示任意精度的算术包,通常称为“大数值”(big number),是一个java对象而不是新的Java类型。
- byte和short类型主要用于特定的应用场合,例如,底层的文件处理或者需要控制占用存储空间的大数组。
- 在Java中,整形的范围与运行Java代码的机器无关。这就解决了软件从一个平台移植到另一个平台,或者在同一个平台中的不同操作系统之间进行移植给程序员带来的诸多问题。与此相反,C和C++程序需要针对不同的处理器选择最为高效的整形,这样就有可能造成一个在32位处理器上运行很好的C程序在16位系统上运行却发生整数溢出。由于Java程序必须保证在所有机器上都能得到相同的运行结果,所以各种数据类型的取值范围必须固定。
- 0x或0X代表十六进制,0b或0B代表二进制,可以0b11_111(31)这样写,编译器会自动将下划线去掉。前缀为0代表八进制,不建议这样写,容易混。
- Java没有任何无符号(unsigned)形式的int、long、short或byte类型。
代码如下
public class Main {
public static void main(String[] args) {
//输出31为例
System.out.println(037);//0作为前缀代表二进制
System.out.println(0x1F);//0x或0X表示十六进制
System.out.println(0b11_111);//0b或0B表示二进制
}
}