一、关键字的概述和特点
概述:被Java语言赋予特定含义的单词
特点:
- 组成关键字的字母全部小写
- 常用的代码编辑器,针对关键字有特殊的颜色标记,不用去可以的记
- 关键字不能作为类名 方法名 变量名等
二、常量的概述和分类
概述:在程序执行的过程中,其值不可以发生改变的量
分类:
- 字符串常量 用双引号括起来的内容(“HelloWorld”)
- 整数常量 所有整数(12,-23)
- 小数常量 所有小数(12.34)
- 字符常量 用单引号括起来的内容(‘a’,’A’,’0’)
- 布尔常量 较为特有,只有true和false
- 空常量 null(数组部分讲解)
三、变量的概述和定义格式
概述:
1 在程序执行的过程中,在某个范围内其值可以发生改变的量
2 从本质上讲,变量其实是内存中的一小块区域
定义格式:
数据类型 变量名 = 初始化值;
变量定义的注意事项:
- 变量未赋值,不能直接使用
- 变量只在它所属的范围内有效
- 一行上可以定义多个变量,但是不建议
四、数据类型的概述和分类
基本数据类型(四类八种)
引用数据类型
五、类型转换
隐式转换:将小的数据类型转换成大的数据类型
数据类型由小到大:byte - short - char - > int ->long- >float->double
强制转换:将大的数据类型转换成小的数据类型
目标类型 变量名 = (目标类型)(被强转的数据)
六、运算符
对常量和变量进行操作的符号称为运算符
1.算数运算符
分类 : + - * / % ++ - -
- /和%的区别: /得到的是两个数的商 %得到的是两个的余数
- ++,- -运算符:对变量做加1或者减1的操作
++和–可以放在变量的前面,也可以放在变量的后面。
单独使用一个变量的时候,放在变量的前面或者后面,效果一样
参与其他操作的时候:
++在变量的后面,先把变量做操作,然后变量再++
++在变量的前面,先变量++,然后在做操作
2.赋值运算符
分类:
分类基本的为=
扩展的赋值运算符 += , -+ ,*= ,/=, %=
3.关系运算符
关系运算符包含:==,!=,>,>=,<,<=
4.逻辑运算符
基本使用:&(与),|(或),^(异或),!(非)
与:& 有false则false
或:| 有true则true
异或:^ 相同则false,不同则true
非:! true则false,false则true
- &&和&的区别
- 单&时,左边无论真假,右边都进行运算
- 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算
- “|”和“||”的区别同理,双或时,左边为真,右边不参与运算
5.三元运算符
格式
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
/*
* 执行流程:
* A:计算关系表达式的值,看结果是true还是false
* B:如果是true,表达式1就是结果
* 如果是false,表达式2就是结果
*/
public class OperatorDemo {
public static void main(String[] args) {
//定义两个变量
int a = 10;
int b = 20;
int c = (a>b)?a:b;
System.out.println("c:"+c);
}
}
七、流程控制语句
流程控制语句分类
-
顺序结构
代码从上往下依次执行 -
选择结构
If语句
switch语句
-
循环结构
for循环语句
while循环语句
do…while循环语句
三种循环的区别 -
do…while循环至少会执行一次循环体
-
for循环和while循环只有在条件成立的时候才会去执行循环体
-
for循环语句和while循环语句的小区别
for循环语句和while循环使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
break和continue的区别:
-
break:跳出循环
-
continue:跳出这一次的操作,进入下一次的循环
/*
* break:中断的意思
*
* 使用场景:
* A:switch语句中,用于结束switch语句
* B:循环语句中,用于结束循环
* 如何使用:
* A:跳出单层循环
* B:跳出多层循环
* 用带标签的语句格式。
*/
public class BreakDemo {
public static void main(String[] args) {
//break可以用于结束当前的循环。
for(int x=1; x<=5; x++) {
if(x == 3) {
break;
}
System.out.println("HelloWorld");
}
System.out.println("-----------------------");
//如果是多层循环,break到底结束的是哪个循环呢?
//break结束的是离他最近的那个循环
//如果我要跳出外层循环,可不可以呢?
//可以。如何实现呢?
//带标签的语句:
//格式:标签名:语句
wc:for(int x=1; x<=3; x++) {
nc:for(int y=1; y<=4; y++) {
if(y == 2) {
break wc;
}
System.out.print("*");
}
System.out.println();
}
}
}
八、Random随机数
/*
* Random:用于产生随机数的类。用法和Scanner类似。
*
* 使用步骤:
* A:导包
* import java.util.Random;
* B:创建对象
* Random r = new Random();
* C:获取随机数
* int number = r.nextInt(10);
* 获取的范围:[0,10) 包括0,不包括10
*/
public class RandomDemo {
public static void main(String[] args) {
//创建对象
Random r = new Random();
for(int x=1; x<=10; x++) {
//获取随机数
int number = r.nextInt(10);
System.out.println("number:"+number);
}
System.out.println("--------------");
//如何获取一个1-100之间的随机数呢?
int i = r.nextInt(100)+1;
System.out.println(i);
}
}