Java基础语法
记录Java基础语法与C语言的一些差别。
一、输入输出
输入:
Scanner in = new Scanner(System.in);
输出:
System.out.println(in.nextLine());
二、类型转换
- ## 自动类型转换(编译器完成):
byte
(8bits), short
(16bits), char
(16bits|Unicode字符) –> int
(32bits) –> long
(64bits) –> float
(32bits) –> double
(64bits)
- ## 强制类型转换(手动完成):
如:
double numbers;
int integer = (int)numbers; //(int)后只转换一个数字
三、判断两浮点数相等
利用 |a - b| < ε 来判断
四、随机生成数
用 Math.random() 来生成 [0 , 1) 的浮点数,再通过四则运算生成 [a , b) 内的浮点数
五、用标签退出多重循环
Java 中引入标签,来为循环体取名字,以便退出多重循环。如下:
label:
for(...) {
for(...) {
...;
break label;
}
}
六、数组
创建数组
int[] numbers = new int[100]; //默认全为0 | | // 数组名 可以是常量/变量 //创建初始化: int[] scores = {88, 89, ...};
数组赋值,则会让两个数组变量管理同一串数组
int[] a = new int[10];
int[] b = a;
- ## 遍历数组
(1)常规遍历
for(int index = 0; index < array.length; inndex++ ) {
if (x == array[index]) {
found = true;
break;
}
}
(2)for - each遍历
for (int k : array) { // k的类型与数组类型相同
if (x == k) { // 缺点:无下标信息,适合读取数组内容
found = true;
break;
}
}
七、包裹类型
类似 C 中的一些标准库所提供的函数。
作用 :获取该类型的属性和行为
基本类型 | 包裹类型 |
---|---|
boolean | Boolean |
char | Character |
int | Integer |
double | Double |
例如:
Integer.MAX_VALUE – int类型能表示的最大值
Character.isDigit(ch); – 判断ch是否是数字 0 - 9
Character.toLowerCase() – 将字符变为小写字母
八、字符串变量
String 是一个类,类似数组,字符串变量管理一串字符串。
创建初始化
(1) 对象创建,“Hello” 放在 堆
String s = new String("Hello");
(2) 直接创建,“Hello”放在 常量池
String s = "Hello";
一些字符串操作
(1)比较字符串内容是否相同
str1.equals(str2);
(2)比较字符串大小
str1.compareTo(str2);
从第一个字符开始比较,相同比较下个字符,不同则返回字符的ASCII差值
(3)获取字符串长度
str1.length();
(4)返回str1[index]的内容
str1.charAt(index);