复习:
1.JDK(jre + tools) - bin
2.变量
3.类型: 基本数据类型 + 引用数据类型
4.基本数据类型:
byte -> short(char) -> int -> long -> float -> double
5.运算符:
&& &
>> >>>
? : -> if - else
________________________________________________
逻辑控制语句
1.顺序结构
2.条件分支结构
如果xxx,就xxx -> if()
如果xxx,就xxx,否则xxx -> if() - else
如果xxx,就xxx,否则 如果xxx,就xxx
-> if -else if - else
switch - case :
(1)只只适用于判断值是否相等
(2)switch(条件) -> 要判断的条件
条件: byte/short/int/char/String
(3)case:
a.case后面接的是要对比的值
b.case具有穿透性的,遇到break结束
c.defalut(默认情况):相当于if-else if () - else情况中的 else
3.循环结构
for:有规律可循,知道次数使用for循环
for(初始值;循环条件;步长){循环体}
执行顺序:
1. int i = 0; 进入循环的初始值
2. i < 100; 进入循环的条件
3. 循环体内容;
4. i++ ; 步长,i的变化规律
while:没有规律,不知道次数的时候使用while循环
do-while: 先执行一次,再循环
while和do-while不能进行随意切换的情况:
在第一次进入循环是就不符合条件
_______________________________________________
数组: 批量定义变量
1.声明(定义)
int[] arr;
char[] c;
double[] d;
byte[] b;
2.初始化
a.静态赋值
特点:只能在声明的同时初始化,不能再次整体赋值
int[] arr = {1,2,3,4};
b.静态赋值
特点:可以进行重复赋值
int[] arr = new int[]{1,3,4,5};
arr = new int[] {1,2,3,4};
静态赋值特点:
都是在声明的时候就已经确定了数组的长度和数组的元素
c.动态赋值
特点:在定义数组是只确定了数组的长度(arr.length)
int[] arr = new int[5];
所以有默认初始值:
int -> 0
double -> 0.0
char -> '\u0000'
String -> null
boolean -> false
3.修改(获取)数组的元素
通过下标获取(修改),下标都是从0开始的
数组下标的范围:0 ~ length-1
4.数组的属性 length
数组的长度 = 数组的元素个数
5.数组的遍历/迭代
依次获取数组中的元素
int[] arr = new int[5];
for(int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
int[] arr = new int[5];
for(int i = 0; i < arr.length; i++) {
arr[i] = (int)(Math.random() * 100);
}
System.out.println(Arrays.toString(arr));