目录
java知识点1:关键字与标识符
1)关键字的概述
2)标识符的概述
java知识点2:变量与常量
java知识点3:进制
java知识点4:数据类型
java知识点5:运算符
java知识点6:键盘录入数据
java知识点7:流程控制语句
java知识点3:循环语句
for循环和while循环的区别
循环语句的区别:
java知识点1:关键字与标识符
1)关键字的概述
被Java语言赋予特定含义的单词
HelloWorld案例中,出现的关键字有public、class、static、void等,这些单词已经被Java定义
好,全部都是小写字母,notepad++中颜色特殊。
2)标识符的概述
就是给类,接口,方法,变量等起名字时使用的字符序列
组成规则:
标识符可以包含 英文字母26个(区分大小写)
0-9数字
$(美元符号)
_(下划线)
注意事项:
不能以数字开头
不能是Java中的关键字
区分大小写
起名字,不能太随便,无规矩,不成方圆。
java知识点2:变量与常量
变量:常量是固定不变的数据,那么在程序中可以变化的量称为变量。
Java中要求一个变量每次只能保存一个数据,必须要明确保存的数据类型
注意事项
变量名称:在同一个大括号范围内,变量的名字不可用相同
变量赋值:定义的变量,不赋值不能使用。
常量:是指在Java程序中固定不变的数据。
常量分类:常量分为字面值常量与自定义常量,其中字面值常量包含
布尔常量 :只有两个值(true和false)
整型常量:所有的整数
小数常量:所有的小数
字符常量 :单引号引起来,只能写一个字符,必须有内容
字符串常量:双引号引起来的内容,可以写多个字符,也可以不写
空常量:只有一个值(后面引用数据类型中讲解)
自定义常量以后补充
Java对整数常量的4中表现形式
二进制
八进制
十进制
十六进制
java知识点3:进制
进制概述
进制:就是进位制,是人们规定的一种进位方法。 对于任何一种进制--X进制,就表示某一位置上的数
运算时是逢X进一位。二进制就是逢二进一,八进制是逢八进一,十进制是逢十进一,十六进制是逢十
六进一。
不同进制的组成规则
二进制
由0,1组成。以0b开头
八进制
由0,1,...7组成。以0开头
十进制
由0,1,...9组成。整数默认是十进制的
十六进制
由0,1,...9,a,b,c,d,e,f(大小写均可),以0x开头
十进制和二进制的快速转换
8421码
十进制转换任意进制:除进制数取余
二进制和八进制,十六进制如何转换
以十进制为桥梁
二进制到八进制 3位组合
100110
二进制到十六进制 4位组合
100110
有符号位的数据表示法(扩展)
在计算机内,有符号数有3种表示法:原码、反码和补码。所有数据的运算都是采用补码进行的。
原码
就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小
反码
正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
补码
正数的补码与其原码相同;负数的补码是在其反码的末位加1。
java知识点4:数据类型
数据类型分类
Java的数据类型分为两大类:
基本数据类型:包括 整数、浮点数、字符、布尔。
引用数据类型:包括 类、数组、接口。
数据类型的转换
自动转换:将取值范围小的类型自动提升为 取值类型大的范围。
强制类型转换:将取值范围大的类型 强制转换成 取值范围小的类型。转换格式:数据类型 变量名 = (数据类型) 被转数据值
强烈注意
浮点转成整数,直接取消小数点,可能造成数据损失精度。
int 强制转成 short 砍掉2个字节,可能造成数据丢失。
java知识点5:运算符
1:运算 :对常量和变量进行操作的过程称为运算。
2:运算符:对常量和变量进行操作的符号称为运算符
3:操作数:参与运算的数据称为操作数
4:用运算符把常量或者变量连接起来符号java语法的式子就可以称为表达式。
不同运算符连接的式子体现的是不同类型的表达式。
运算符分为
算术运算符
赋值运算符
比较运算符
逻辑运算符
位运算符
三目运算符
算术运算符:
运算符 |
名称 |
+(-) |
正号(负号) |
+(-) |
加(减) |
*(/) |
乘(除) |
% |
取模,取余 |
++(--) |
自增(自减)在前 |
++(--) |
自增(自减)在后 |
+ |
字符串相加 |
+的几种作用:
加法
正数
字符串连接符
除法的时候要注意一个问题:
整数相除,只能得到整数
要想得到小数,可以*1.0
/和%的区别:
/获取的是操作的商,%获取的是除法的操作的余数
++和--的应用:
单独使用效果相同
参与运算使用,在操作数的前后效果不同
赋值运算符:
符号
= , +=, -=, *=, /=, %=
=为基本的赋值运算符,其他的为扩展的赋值运算符
关系运算符:
注意事项
比较运算符的结果都是boolean型,也就是要么是true,要么是false。
比较运算符“==”不能误写成“=” 。
逻辑运算符:
运算符 |
运算 |
& |
与 |
| |
或 |
^ |
异或 |
! |
非 |
&& |
与(具有短路效应) |
|| |
或(具有短路效应) |
逻辑运算符用于连接布尔型表达式
“&”和“&&”的区别
单&时,左边无论真假,右边都进行运算。
双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
“|”和“||”的区别同理,双或时,左边为真,右边不参与运算
异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。
&:有false则false
|:有true则true
^:相同false,不同true
帮助理解:情侣必须是男女或者女男
!:非false则true,非true则false
&&,||和&以及|的区别
结果相同,但是有短路效果,一般建议使用&&,||
位运算符 :
位运算是直接对二进制进行运算。
三目运算符:
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
java知识点6:键盘录入数据
实现步骤:
1. 导包(位置放到class定义的上面)
import java.util.Scanner;
2. 创建对象
Scanner sc = new Scanner(System.in);
3. 接收数据
int x = sc.nextInt();
java知识点7:流程控制语句
流程控制语句概述
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对
运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语
句的执行顺序来实现我们要完成的功能。
流程控制语句的分类
顺序结构语句
选择结构语句
循环结构语句
顺序结构概述
是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大
多数的代码都是这样执行的。
总的来说:写在前面的先执行,写在后面的后执行
选择结构
也被称为分支结构。
选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生
选择,按照不同的选择执行不同的代码。
Java语言提供了两种选择结构语句
if语句
switch语句
if语句格式1:
if(关系表达式){
语句体;
}
if语句格式2 :
if(关系表达式) {
语句体1;
}else {
语句体2;
}
if语句格式3
if(关系表达式1) {
语句体1;
}else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
switch语句
switch语句格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
执行流程:首先计算出表达式的值其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程
中,遇到break就会结束。最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序
结束掉。
switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),jdk7以后可以接收字符
串。
注意事项:
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
default可以省略吗?可以省略。一般不建议。除非判断的值是固定的。(单选题)
break可以省略吗?可以省略,一般不建议。否则结果可能不是你想要的
default的位置一定要在最后吗?可以出现在switch语句任意位置。
switch语句的结束条件:
遇到break
执行到程序的末尾
case穿透性
在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运
行,直到遇到break,或者整体switch结束。
java知识点3:循环语句
循环概述
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复
执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形
成死循环。
循环语句的组成
初始化语句:一条或者多条语句,这些语句完成一些初始化操作。
判断条件语句:这是一个boolean 表达式,这个表达式能决定是否执行循环体。
循环体语句:这个部分是循环体语句,也就是我们要多次做的事情。
控制条件语句:这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变
量,使得循环在合适的时候结束。
循环语句1--for
for循环语句格式:
for(初始化表达式①; 布尔表达式②; 步进表达式④){
循环体③
}
执行流程
执行顺序:①②③④>②③④>②③④…②不满足为止。
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环条件所涉及变量的变化情况
循环语句2--while
while循环语句格式:
while循环语句格式:
基本格式
while(判断条件语句) {
循环体语句;
}
扩展格式
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}
for循环和while循环的区别
for循环语句和while循环语句可以等价转换,但还是有些小区别的使用区别:
控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如
果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使
用效率。
循环语句3--do...while
do...while循环格式 :
do…while循环语句格式:
基本格式
do {
循环体语句;
}while((判断条件语句);
扩展格式
初始化语句;
do {
循环体语句;
控制条件语句;
} while((判断条件语句);
循环语句的区别:
三种循环语句都可以完成一样的功能,也就是说可以等价转换,但还是有小区别的:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
注意事项:
写程序优先考虑for循环,再考虑while循环,最后考虑do…while循环。
跳出语句
Java提供了break,continue和return来实现控制语句的跳转和中断。break 中断continue 继续return 返回
break:
使用场景:终止switch或者循环
在选择结构switch语句中
在循环语句中
离开使用场景的存在是没有意义的
break的作用:
跳出单层循环
跳出多层循环
带标签的跳出
格式:标签名: 循环语句
标签名要符合Java的命名规则
continue:
使用场景:结束本次循环,继续下一次的循环
return :
Return关键字是为了退出一个方法。跳转到上层调用的方法。(结束main方法)
死循环
自我理解:顾名思义就是无限循环,循环中的条件永远为true。例如:while(true){}。
死循环:
也就是循环中的条件永远为true,死循环的是永不结束的循环。例如:while(true){}。
在后期的开发中,会出现使用死循环的场景,例如:我们需要读取用户输入的输入,但是用户输入多少数据我们并
不清楚,也只能使用死循环,当用户不想输入数据了,就可以结束循环了,如何去结束一个死循环呢,就需要使用
到跳出语句了。