因为 Java 语言和 C/C++ 在很多语法上相似甚至完全一致(例如各种控制语句),因此这里只列出 Java 与 C 家族不同的语言特性。
Java 一共有 8 种「基本数据类型」。
类型 | 空间 | 范围 | 备注 |
---|---|---|---|
byte | 1 字节 | -128 — 127 | |
short | 2 字节 | -2^15 — 2^15 - 1 | |
int | 4 字节 | -2^31 — 2^31 - 1 | |
long | 8 字节 | -2^63 — 2^63 - 1 | 声明常量要加「L」 |
float | 4 字节 | —— | 声明常量要加「F」 |
double | 8 字节 | —— | 浮点数的默认类型 |
char | 16 字节 | UTF-16 | |
boolean | —— | false 或 true | 不能用 0 和非 0 代替 |
类 class
、接口 interface
和数组都是引用类型。
Java 的标准输入流是一个 InputStream
对象,有两种常用的读取方式:
用读字符流的方法将 System.in
读到一个 BufferedReader
中。
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
stdin.readLine() // <= 得到用户输入的字符串
用 java.util.Scanner
对 System.in
进行封装。
Scanner stdin = new Scanner(System.in);
stdin.nextLine() // <= 得到用户输入的字符串
System.out.print()
不换行输出。System.out.println()
换行输出。System.out.printf()
格式化输出,语法同 C 标准库的 printf()
。Java 中的「数组」是确定长度的,一经创建就不能再加长了。