第二章 基本程序设计
2.1 从控制台读取输入
Java使用System.out来表示标准输出设备,用System.in来表示标准输入设备。但是Java不支持直接控制台输入,需要使用Scanner类创建对象以读取来自System.in的输入,具体语法为:Scanner input = new Scanner(System.in);
可用下表方法读取各种不同类型的输入:
方法 | 描述 |
---|---|
nextByte() | 读取一个byte类型的整数 |
nextShort() | 读取一个short类型的整数 |
nextInt() | 读取一个int类型的整数 |
nextLong() | 读取一个long类型的整数 |
nextFloat() | 读取一个float类型的数 |
nextDouble() | 读取一个double类型的数 |
next() | 读取一个字符串,该字符在一个空白符之前结束 |
nextLine() | 读取一行文本(即以按下回车键为结束标志) |
2.2 标识符
所有标识符遵守以下规则:
- 标识符是由字母、数字、下划线(_)和美元符号(
)构成的字符序列。−标识符必须以字母。下划线()和美元符号(
)开头,不能以数字开头。
- 标识符不能使保留字。
- 标识符不能是true、false或null。
- 标识符可以为任意长度。
2.3 变量
变量:用于存储程序中用到的数据。
变量声明(variable declaration):告知编译器根据数据类型为变量分配合适的存储空间。
PS:在赋值给变量之前,必须声明变量。方法中声明的变量在使用之前必须被赋值。可以一步完成变量的声明和赋初值。
2.4 定名常量
一个变量的值在程序执行过程中可能会发生变化,但是定名常量(named constant)或简称常量则表示从不改变的永久数据。下面是声明常量的语法:final datatype CONSTANTNAME = VALUE;
常量必须在同一条语句中声明和赋值。单词final是声明常量的Java关键字。
2.5 数据数据类型以及其运算
Java为数值、字符值和布尔值数据提供了八种基本数据类型。下表列出六中数值数据类型、他们的范围以及所占存储空间。
类型名 | 范围 | 存储大小 |
---|---|---|
byte | -2^7(-128)~2^7-1(127) | 8位带符号数 |
short | -2^15(-32768)~2^15-1(32767) | 16位带符号数 |
int | -2^31~2^31-1 | 32位带符号数 |
long | -2^63~2^63-1 | 64位带符号数 |
float | 负数范围:-3.4028235E+38~-1.4E-45,正数范围:1.4E-45~3.4028235E+38 | 32位,标准IEEE 754 |
double | 负数范围:-1.7976931348623157E+308~-4.9E-324,正数范围:4.9E-324~1.7976931348623157E+308 | 64位,标准IEEE 754 |
PS:当被赋值的变量的值太大以至于无法存储时会造成上溢(overflow)。例如,int value = 2147483647+1;//实际得到的结果为-2147483648(因为int型最大为2147483647)