第二章 Java基本语法

版本:JDK1.8
注:观看尚硅谷视频的复习笔记

一、关键字和保留字

1、用于定义数据类型的关键字

class、interface、enum、byte、short、int、long、float、double、char、boolean、void

2、用于定义流程控制的关键字

if、else、switch、case、default、while、do、for、break、continue、return

3、用于定义访问权限修饰符的关键字

private、protected、public

4、用于定义类,函数,变量修饰符的关键字

abstract、final、static、synchronized

5、用于定义类与类之间关系的关键字

extends、implements

6、用于定义建立实例及引用实例,判断实例的关键字

new、this、super、instanceof

7、用于异常处理的关键字

try、catch、finally、throw、throws

8、用于包的关键字

package、import

9、其他修饰符关键字

native、strictfp、transient、volatile、assert

10、用于定义数据类型值的字面值

true、false、null

11、保留字

goto、const

二、标识符

1、定义:凡是可以自己命名的就是标识符

2、命名规则:

由26个英文字母大小写,0-9,_或 $ 组成

数字不可以开头。

不可以使用关键字和保留字,但能包含关键字和保留字。

Java 中严格区分大小写,长度无限制。

标识符不能包含空格

3、命名规范:

包名:多单词组成时所有字母都小写:xxxyyyzzz

类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz

变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz

常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

三、变量

1、变量的概念:

内存中的一个存储区域

该区域的数据可以在同一类型范围内不断变化

变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值

2、变量的作用:

用于在内存中保存数据

3、使用变量注意:

Java中每个变量必须先声明,后使用

使用变量名来访问这块区域的数据

变量的作用域:其定义所在的一对{ }内

变量只有在其作用域内才有效

同一个作用域内,不能定义重名的变量

四、数据类型

1、基本数据类型(primitive type)

(1)、整数类型(byte,short,int,long)

​ long类型定义时末尾必须加 l或L

​ byte(1字节)、short(2字节)、int(4字节)、long(8字节)

(2)、浮点类型(float,double)

​ Java的浮点型常量默认为double型,定义float类型,末尾必须加f或F

​ float(4字节)、double(8字节)

(3)、字符型(char)

​ 用’'括起来,内含一个字符或一个转义字符

​ char(2字节)

(4)、布尔型(boolean)

​ 只能是true或false

2、引用数据类型(reference type)

类(class)、接口(interface)、数组([])

3、自动类型提升

当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。

byte 、char 、short --> int --> long --> float --> double

当byte、char、short三种类型的变量做运算时,结果为int型

4、强制类型转换

需要使用强转符:(),例如:(数据类型)变量;

五、进制之间的转换

二进制(binary) :0,1 ,满2进1.以0b或0B开头。

十进制(decimal) :0-9 ,满10进1。

八进制(octal) :0-7 ,满8进1,以数字0开头表示。

十六进制(hex) :0-9及A-F,满16进1,以0x或0X开头表示。此处的A-F不区分大小写。

1、二进制 转十进制

原码:直接将一个数值换成二进制数。最高位是符号位 10000000

负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。

负数的补码:其反码加1。

正数的原码、反码、补码都相同。

*计算机底层以补码的形式存储数据。

2、十进制转二进制

除2取余的逆

3、二进制转八进制、二进制转十六进制

八进制:从右向左三个代表一个八进制数

十六进制:从右向左四个代表一个十六进制数

六、运算符

1、算术运算符

+、-、*、/、%、++

整形相除,强制取整

两数取余,符号取被取余的数,取余两侧都为整数

2、赋值运算符

=、+=、-=、*=、/=

3、比较运算符

==、!=、<、<=、>、>=、instanceof

4、逻辑运算符

&、|、^、&&、||、!

5、位运算符

<<、>>、>>>、&、|、^、~

(1)、<<(左移):每向左移一位 原数乘2

(2)、>>(右移):每向右移一位 原数除2

​ 被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,空缺位补1。

(3)、>>>(无符号右移):被移位二进制最高位无论是0或者是1,空缺位都用0补。

(4)、&(与):只有1&1时结果是1,否则是0;

(5)、|(或):只有0 | 0时结果是0,否则是1;

(6)、^(异或):相异为1,相同为0

(7)、~(取反):各二进制码按补码各位取反

6、三元运算符 ?:

格式:(条件表达式)? 表达式1 :表达式2;

表达式1和表达式2必须统一类型

7、运算符优先级
运算符优先级

七、程序流程控制

(一)、顺序结构

程序顺序执行

(二)、分支结构

1、if-else

2、switch-case

switch(表达式) {
case 常量1:
	 语句1:
	 break;
case 常量2:
	 语句2:
	 break;
default:
	 语句n;

根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。

当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构末尾结束为止。

break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构

switch结构中的表达式,只能是如下的6种数据类型之一:byte 、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)

case 之后只能声明常量,不能声明范围。

default相当于if-else结构中的else。default结构是可选的,而且位置是灵活的。

(三)、循环结构

1、for

for(1初始化条件;2循环条件;4迭代条件){
	3循环体;
}
int num = 1;
for(System.out.print('a');num <= 3;System.out.print('c'),num++) {
	System.out.print('b');
}
//输出结果:abcbcbc

2、while

1初始化条件;
while(2循环条件){
	3循环体;
	4迭代条件;
}

3、do-while

1初始化条件;
do{
	3循环体;
	4迭代条件;
}while(2循环条件);

循环体必执行一次

(四)、break与continue

1、break

switch-case:跳出switch结构

循环:结束当前循环

2、continue

结束本次循环

3、带标签的break与continue

label:for(int i = 1;i <= 4;i++){
		for(int j = 1;j <= 10;j++){	
			if(j % 4 == 0){
			//break label;//结束指定标识的一层循环结构
			continue label;//结束指定标识的一层循环结构当次循环
		}
		System.out.print(j);
	}
	System.out.println();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值