复习
数据类型:
基本数据类型 + 引用数据类型
8大基本数据类型:
整型:byte/short/int/long
浮点型:float/double
字符型:char
布尔型:boolean
运算符
算数运算符
赋值运算符
比较运算符 -> 返回boolean
逻辑运算符 - > & && | ||
位运算 -> 二进制
位移运算 -> 二进制
三目(三元)运算符 -> if
逻辑控制语句
顺序结构
分支结构 -> 条件判断
if(条件)
if(条件) - else
if(条件) - else if()
switch(条件) - case
循环结构
__________________________________________
循环结构:
for:知道次数,或者有规律
求 1 ~ 100和
求 20!
求 3/5 ..
执行顺序:
a. int i = 1 ->进入循环的条件
b. i < 100 -> i等于这个数的时候满不满足第二个条件
c.满足则执行大括号中的代码
d.最后i++,i执行到下一个数,然后在回到第二个条件中进行判断
while: 不知道次数,或者没有规律
语义环境: 当...就...
do - while:先执行一次,再做循环
语义环境:做..直到..
特殊情况: 第一次不符合需求时,将不进入循环
_______________________________________
定义:10个随机整数,并且打印出来
int a1,a2,a3....a10;
a1 = (int)(Math.random() *10)
a2 = (int)(Math.random() *10)
a3 = (int)(Math.random() *10)
a4 = (int)(Math.random() *10)
System.out.println(a1)
System.out.println(a2)
System.out.println(a3)
数组:
概念:
1) 数组就是批量定义变量的方式
2) 数组相当于是个容器,装的是相同类型的若干数据,是一种基本的数据类型
3) 数组属于引用数类型
定义数组:
数组长度一旦确定,就不可修改
声明数组:
数据类型[] + 引用名
int[] array;
double[] d;
char[] c;
boolean[] b;
初始化:
方式一:静态赋值
ps:int[] arr1 = {1,2,3,4,5};
特点:
只能在声明的同时初始化
方式二:静态赋值
ps:int[] arr2 = new int[] {1,2,3,4};
特点:
再次赋值时也可以使用
静态赋值的特点:
数组一旦初始化,就已经确定了数组的长度(元素个数)和元素的值
动态赋值:
ps:int[] arr3 = new int[5];
特点:
1)定义数组时只是确定了数组的长度(元素的个数),但是没有初始化元素
2)元素有默认初始值,都是0,但是0的表现形式不一样
int类型 -> 0
double类型 -> 0.0
boollean类型 -> false
char类型 -> '\u0000'
获取数组元素:
通过下标获取数组元素,下标都是从0开始
数组下标范围:
0 ~ 数组名.length - 1
数组的属性: length
数组长度 = 数组个数
数组的迭代/遍历
依次获取数组中的元素
可能出现的异常:
ArrayIndexOutOfBoundsException:数组下标越界异常
JVM内存空间:
方法区: 类相关的信息
栈:局部变量/临时变量
堆:引用类型的真正数据
类加载: 将字节码文件(.class文件)中的类相关的信息读到JVM中
工具: 类加载器