本文为《Java 语言程序设计》第十版 章节笔记
2.1 引言
2.2 编写简单的程序
编写程序设计如何设计算法以及如何将算法翻译成程序指令,即代码。
算法描述的是:如果要解决问题,所需要执行的动作以及这些动作执行的顺序。
变量代表了储存在计算机内存中的一个值。变量名尽量选择描述性的名字(descriptive name)声明变量 :为了能让编译器知道变量什么,需要指明它们的数据类型。
原始数据类型(基本数据类型):整数、实数、字符、布尔类型。
在源代码中,字符串常量不能跨行,可以将其分为几个单独的子串,用连接符(+)将它们组合起来。
2.3 从控制台读取输入
Java 使用 System.out
来表示标准输出设备,用 System.in
来表示标准输入设备。默认情况下,输出设备是显示器,输入设备是键盘。
使用 println
方法在控制台上显示基本值或字符串。
Java 并不直接支持控制台输入,但是可以用 Scanner 类创建它的对象,以来读取来自 System.in 的输入。eg:
Scanner input = new Scanner(System.in);
2.4 标识符
标识符是为了表示程序中诸如类、方法和变量的元素而采用的命名。
规则:
- 由字符、数字、下划线(_)、美元符号($)构成
- 以字母、下划线、美元符号开头,不能以数字开头
- 不能是保留字
- 不能是 true、false 和 null
- 标识符任意长度
一般 $ 开头的只用在机器自动产生的源代码中。
2.5 变量
变量用于表示在程序中可能被改变的值。
声明变量 :为了能让编译器知道变量什么,需要指明它们的数据类型,即储存在变量中的数据类型。eg:double radius
。
变量声明告知编译器根据数据类型为变量分配何时的内存空间。
一个变量必须先声明再赋值。任何时候,都要尽可能一步完成变量的声明和赋值。
eg:
double i; //声明单个变量
double i, k, g; // 声明多个变量
i = 2.0; // 给单个变量赋值
i = k = g =1.0; // 给多个变量赋值
double i = 2.0; // 声明和赋值一起
// 那同时给多个变量声明和赋值呢?分两条语句,先声明,再赋值。
每个变量都有使用范围,指变量可以被引用到的程序的部分。
2.6 赋值语句和赋值表达式
赋值语句的语法:
variable =expression; //(变量 = 表达式)
等号左右两边数据类型必须兼容。
2.7 命名常量
命名常量(named constant)或简称常量,表示从不改变的永久数据。
语法:
final datatype CONSTANTNAME = value ;
常量必须在同一条语句中声明和赋值。单词 final 是声明常量的 Java 关键字。
2.8 命名习惯
- 变量和方法 使用小写字符命名,驼峰命名法
- 类名 中的每个单词的首字母大写
- 常量 中的所有字母大写,单词间用下划线连接
2.9 数值数据类型和操作
2.9.1 数值类型
类型名 | 范围 | 储存大小 |
---|---|---|
byte |
-2^7 (-128)~ 2^7 -1(127) | 8 位带符号数 |
short |
-2^15(-32 768)~ 2^15-1(32767) | 16 位带符号数 |
int |
-2^31(-2 147 483 648)~ 2^31-1(2 147 483 647) | 32 位带符号数 |
long |
-2^63 ~ 2^63-1 (-9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807) | 64 位带符号数 |
float |
负数范围:-3.4028235E+38 ~-1.4E-45 正数范围:1.4E-45 ~ 3.4028235E+38 | 32 位,标准 IEEE 754 |
double |
负数范围:-1.797691348623157E+308 ~ -4.9E-234 正数范围:4.9E-324 ~ 1.7976931348623157E+308 | 64 位,标准 IEEE 754 |
2.9.2 从键盘读取数值
Scanner input = new Scanner(System.in);
System.out.print("Enter a byte value: ");
byte byteValue = input.nextByte();
Scanner 对象方法:
nextByte()
nextShort()
nextInt()
nextLong()
nextFloat()
nextDouble()
2.9.3 数值操作符
+
-
*
/
%
为了实现浮点数的除法,其中一个操作数必须是浮点数。
/、% 的结果正负都是看 被除数的正负。
2.9.4 幂运算
Math.pow(a, b)
2.10 数值型直接量
整型直接量默认是 int 型的,浮点直接量默认是 double 型的。
科学计数法
1.23456 * 10^2 可以写成 1.23456E2 或 1.23456E+2;
而 1.23456 * 10^-2 等于 1.23456E-2。
2.11 表达式求值以及操作符优先级
先括号,再乘除,最后加减。
2.12 实例学习:显示当前时间
import java.util.Date;
import java.text.SimpleDateFormat;
public class test {
public static void main(String[] args) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(df.format(new Date()));
}
}
2.13 增强赋值操作符
- +=
- -=
- *=
- /=
增强赋值操作符在表达式中所有其他操作符计算完成后执行。
2.14 自增和自减操作符
自增操作符(++)和自减操作符(--)是对变量进行加 1 和减 1 的操作。
++var
:先加 1 再参加计算var++
:先参加计算,最后 var 值加 1--var
:先减 1 再参加计算var--
:先参加计算,最后 var 值减 1
2.15 数值类型转换
总是可以将一个数值赋给支持更大数值范围类型的变量,Java 自动拓宽。
将一个值赋给一个范围较小的类型的变量,就需要显式的进行转换,同时会丢失精度。
End
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于