3.1 类型
Java 有两大数据类型,如下:
3.2 八种基本数据类型
3.2.1 整型
可以理解为整数。
- btye:-27 ~ 27 - 1 (-127 ~ 128)
- shot:-215 ~ 215 - 1 (-32768 ~ 32767)
- int :-231 ~ 231 - 1 (-2147483648 ~ 2147483647)
- long:-263 ~ 263 - 1 (-9223372036854774808 ~ 9223372036854774807)
注:这里涉及到有符号和无符号,将最高位当成符号数。java 中都是有符号类型。其他如 C 语言就分有符号和无符号。这些自行了解。
3.2.2 浮点型
可以理解为小数。
3.2.3 字符型
如:‘a’。单引号引起来。
3.2.4 布尔型
如:true / false。
3.3 概念
3.3.1 字节
是计算机中数据处理的基本单位,相当于元、角、分。通常情况下,1 字节 = 8 位。
上图中 char 类型是根据编码格式定义的,通常 gbk/gb2312 是 2 个字节,utf-8 是 3 个字节。(编码格式这里不细讲,到时遇到问题再说).
boolean 类型占用字节没有给出精确定义,具体解析可以参考知乎
3.3.2 位
是计算机内部数据储存的最小单位。计算机执行的是机器码(二进制 0 1),每一位的状态只有 0 和 1。
如 byte 是 1 字节 8 位数,每一位都有两种状态,而以 0 为中介,0 开头表示正数,最大数为 127(01111111)(27 - 1);1 开头表示负数,最小数为 -128(10000000)(-27 )。
注:这里会涉及到原码、反码和补码,如果不知道的可以自行查阅,或先补充一下《计算机组成原理》的知识。
举例:以下数字转为 4 位机器码
- 1 :0001
- 2 :0010
- 3 :0011
- 4 :0100
- 5 :0101
- …
即逢二进一,可以根据逢十进一进行类比。
以下数字转为 8 位机器码
- 1 :0000 0001
- 2 :0000 0010
- 3 :0000 0011
- 4 :0000 0100
- 5 :0000 0101
- …
所以,可以回顾一下,因此应该明晰了上述的基本数据类型的取值范围。
3.4 引用类型
在这里只讲 String 字符串类型,其他引用类型之后讲解。
String 用 “” 双引号引起来表示。
3.5 第一个 Java 程序
前面讲了那么多枯燥乏味但十分重要的知识点概念,来一段开头程序解解闷。
新建文件夹,再新建一个【文本文档】( .txt) 文件,将后缀改为 .java,文件名为 Test
用记事本打开该文件,打上以下代码后保存:
public class Test {
public static void main(String[] args){
System.out.println("hello world!");
}
}
在文件路径下输入“cmd”后进入命令窗口,并输入 “javac Test.java” 编译该源码文件。
注:如果提示 javac 不是内部命令,请根据上篇文章来弄。
编译成后,该文件夹下会出现 Test.class 的字节码文件,和上篇文章讲解的流程一样。
然后在命令窗口输入如下命令:java Test (这里不需要大全文件名 + 后缀)
可以看到,已经输出了 “hello world!” 的字符串。图解如下:
注:对于初学者,我建议先不要用如 IntelliJ IDEA 或 eclipse 等这样的开发工具,先将代码熟悉后再使用这些便捷的开发工具,这样可以提高自己的记忆力。
至此,大家应该基本懂了 Java 数据类型,接下来请看《4 Java 程序结构与基本语法》