写在开头
所有知识点都写下来实在是太多啦,而且有的知识点还是比较容易理解的,从今天开始我罗列出一天所学的知识点,比较容易理解的直接贴一个我觉得解释的比较全面的网址。
嗯就这样!不是我懒!
里面的知识点不可能都展现在标题,大家使用搜索功能
(很快就可以修复好)搜自己想要了解的知识点。
运算符
基本算数运算符
自增自减运算 ⭐⭐⭐
自增自减运算是java面试中百分百会考察的知识点。也是初学者不好理解的一点。
- ++:表示自增,每次增加1;
- –:表示自减,每次减少1;
自增或自减使用注意事项:
- ++或者–当变量不参与运算时,写在变量前或者变量后,效果一样,都是自增或者自减1
- 当变量参数运算时,++或–写在变量前,先进行变量自身的++或–,再进行运算++或–写在变量后,先使用变量值本身进行运算,运算完毕再进行变量自身的++或–
在代码里或许更好理解点
1 | // ++ 或 -- 算数运算符 |
赋值运算符
赋值运算符: 主要是进行赋值以及运算
= : 表示把右边的数据,赋值给等号的左边
举例: int i = 9 ; 表示将9的数值赋值给变量i
+= :
举例: int i = 10;
i+=2;相当于: i= i+2;
1) 先进行运算i+2 2) 将i+2的结果,赋值给变量i
剩下的有makdown特殊字符,我放在代码块里:
1 | -= : int i = 10;i-=3; 相当于 i = i-3; |
再来一串代码,更容易理解点:
1 | // 赋值运算符 |
1.4 比较运算符
代码都写了,不放上去就是浪费,浪费是可耻的!
1 | //比较运算符 |
逻辑运算符
逻辑运算: 将表达式真假值判断做合理的逻辑结合
举例: 要求: 登录界面,客户姓名,客户密码,如果客户想要正确登录
条件: 客户姓名真的 并且 客户密码对的
说明: 逻辑运算符的结果,并不是一个数值,结果是boolean (true真 false假)
&
- 相当于中文“并且”,即运算双方都需要为ture
- 使用场景:用户名&密码,两者都需要满足ture时,才可以登录系统。两者有一个false或者都为false都不能完成登录系统。
- ture & ture—–ture
ture & false—-false
false & ture—-false
false $ fase—-false
|
- 相当于中文“或者”,即运算双方有一个为ture就为ture
- 使用场景:信息收集时候,要求填写手机号和家庭座机二者有一个即可。
- true | true true
true | false true
false | true true
false | false false
&&
结果与& 完全相同
&&与&的不同:如果左边的表达式,能决定&&的返回值结果,那么右边的表达式不管是什么都不再执行,所以
性能比&高
。
||
结果与| 完全相同
||与|的不同:如果左边的表达式,能决定||的返回值结果,那么右边的表达式不管是什么都不再执行,所以
性能比|高
。
说明: 实际的开发场景中,基本上都使用 && 与 ||
^ ! 运算
放点代码理解下:
1 | //逻辑运算符 |
三元运算符
表达式?表达式1:表达式2
- 表达式:必须是boolean类型的表达式。
- ?:问,前面的表达式的结果是ture还是false。
- 表达式1:如果表达式的结果为ture,那么整个表达式的结果就为表达式1
- 表达式2:如果表达式的结果为false,那么整个表达式的结果就为表达式2
- 表达式1和表达式2的类型尽量一致。
1 | public class Sanyuan |
位移运算
位移运算:数据在内存中,可以通过位置的移动,来进行计算
底层:十进制数能转换成2进制数
位移的分类:
1 | >>:右移,每次向右移动一位,可以让一个十进制数/2 |
说明:
只能进行整数运算。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class C6
{
public static void main(String[] args)
{
int i = 10;
//向左移动一位,原值*2
i = i << 1 ;
System.out.println(i); //20
int x = 10;
//向左移动一位,原值/2
x = x >> 1 ;
System.out.println(x); //5
int y = 5;
//向左移动二位,原值/2/2
y = y >> 2 ;
System.out.println(y); //1
}
}
引用数据类型 ⭐⭐⭐
数据类型的概述
- 基本数据类型,四类八种,比较简单,直接表达出数据属于那种具体类型
- 引用数据类型: 类(class),数组,接口
举例: 类 Person 属性: 名字,年龄,眼睛,嘴 功能: 吃饭,睡觉,喝水
引用: 指Person在内存中进行存储,记录的不仅仅是你的变量名,记录的是Person在内存中的地址
引用数据类型的定义
基本数据类型: 数据类型 变量名 = 变量值 ;
引用数据类型:
定义格式 :
举例:
Scanner类
Scanner类功能可以接收键盘输入的内容
- 需要先导包,确定,要使用的类,在哪个路径下,使用 import关键字, import java.util.Scanner;//改包在jdk根目录下有一个src.zip
- Scanner类对象的创建:
数据类型 变量名 = new 数据类型();
Scanner sc = new Scanner(System.in); - 使用sc变量名. 方法名,这样可以使用Scanner中的具体方法(功能)
Scanner类中的功能:
- nextInt(); 接收键盘输入的一个整数,返回值的,int类型的整数
- next(); 接收键盘输入的一个字符串,返回值也是String类型
1 | // 引用数据类型 |
接收键盘输入的两个整数求和:
1 | import java.uil.Scanner; |
键盘录入一个整数,判断该数字的奇偶
例如,输出:该数字是25,是一个奇数
1 | /* |
Random类
Random 类: 生成一个随机数,JDK写好的类,直接使用,使用步骤
- 导包,import java.util.Random;
- 创建对象, Random ran = new Random();
- ran.方法(),调用类中的功能
方法介绍: ran.nextInt(10); 表示随机输出0-10之间的整数(包括0,不包括10,相当于0-9),返回值类型为int类型
Random 案例使用场景: 例如,双色球, 随机点名
生成随机数:
1 | import java.util.Random; |
3 流程控制语句 if (分支结构)
我就不说了,和c语言差不多贴几个代码吧。
1 | // if语句的第一种表达方式 |
1 | // if else语句 if语句的第二种表达方法 |
1 | // if语句的第三种表达方式 |
晚安
今天就到这里了,明天见,加油!