2.1 关键字 & 保留字

被 Java 语言赋予了特殊含义,用做专门用途的字符串(单词)

2.2 标识符

凡是自己可以起名字的地方都叫标识符。

通常有:类名、变量名、方法名。。。。包名、接口名、。。。

规则:(必须按照如下的规则执行,一旦某规则不符合,编译运行时就会出问题)

由26 个英文字母大小写,0-9 ,_或 $ 组成数字不可以开头。

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

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

标识符不能包含空格。

命名的习惯:(如果不遵守,实际上程序编译运行也不会出问题)

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

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

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

单词首字母大写:xxxYyyZzz

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

2.3 变量

1.变量的分类

1)存在的位置的不同:成员变量(属性、Field)(存在于类内部,方法体的外部)

和局部变量(方法体的内部、

构造器的内部、代码块的内部、方法体或构造器的形参部分)

2)数据类型的不同:

javase笔记2

基本数据类型(8 种)

整型:byte(1 个字节)、short、int(默认值类型)、long(后缀是 l 或 L)。

浮点型:float(后缀是 f 或 F)和 double(默认值类型)。

布尔型:boolean (只有两个值:true 和 false,绝对不会取值为 null)

字符型:char(1 个字符)

引用数据类型:类(比如:String 字符串类型)、接口、数组

2.如何声明:

变量的类型 变量的名字 初始化值(显式的初始化、默认初始化)

int i;

i = j + 12;

boolean b = false;

String str = “wxkj”;

Customer c = new Customer();

3.变量必须先声明后使用

4.使用变量注意:

变量的作用域:一对{ }之间有效

初始化值

5.自动类型转化&强制类型转化(重点)(不包含 boolean 型,及 String 型)

1)强制类型转化时,可能会损失精度。

2.4 进制

十进制

二进制

八进制

十六进制

1.进制之间的转化:

会将-128 到 127 范围内的十进制转化为二进制 & 能将一个二进制数转换为十

进制数(延伸:十进制、二进制、八进制、十六进制)

2.对于几类基本类型的数据的某个具体值,能够用二进制来表示。同时,如果给

出一个数据的二进制,要能够会

转化为十进制!

正数:原码、反码、补码三码合一。

负数:原码、反码、补码的关系。负数在计算机底层是以补码的形式存储的。

2.5 运算符

算术运算符

赋值运算符

比较运算符(关系运算符)

逻辑运算符

“&”和“&&”的区别:&:当左端为 false 时,右端继续执行

&&:当左端为 false 时,右端不再执行

“|”和“||”的区别:|:当左端为 true 时,右端继续执行

||:当左端为 true 时,右端不再执行

位运算符

<< >> >>> & | ^ ~

三元运算符

javase笔记2

1.三元运算符与 if-else 语句的联系

1)三元运算符可以简化 if-else 语句

2)三元运算符一定要返回一个结果。结果的类型取决于表达式 1 和 2 的类

型。(表达式 1 和 2 是同种类型的)

3)if-else 语句的代码块中可以有多条语句。

2.6 流程控制

条件判断:

if(表达式 1){

//执行语句

}else if(表达式 2){

//执行语句

}else{

//执行语句

}

1.一旦执行条件判断语句,有且仅有一个选择“路径”里的代码块被执行。

2.如果多条表达式间是“互斥”关系,彼此是可以调换顺序。

如果多条表达式间存在“包含”关系,一定要将范围小的表达式写在范围大的

表达式对应的语句的上面。

3.选择判断语句可以“嵌套”

4.若执行语句只有一句,那么对应的一对{}可以省略。

选择结构:switch-case

1.结构

javase笔记2
2.表达式可以存放的数据类型:int byte short char String 枚举

3.表达式存放是数值或者说是离散的点所代表的常量,绝对不是取值范围。

3.default 是可选的。default 的位置也不是固定的,当没有匹配的 case 时,执行 default

4.break 在 switch-case 中的使用。当执行到某条 case 语句后,使用 break 可以跳

出当前的 switch 语句。

如果此 case 中没有 break,那么,程序将依次执行下面的 case 语句,直至程序

结束或者遇到 break。

【switch-case 与 if-else if-else 的联系】

1.表达式是一些离散的点,并且取值范围不是很大,要求是 int byte short char

String 枚举类型之一。

建议使用 switch-case。执行效率更高

2.如果表达式表示的是范围(或区间)、取值范围很大,建议使用 if-else if-else

循环结构:①初始化条件②循环条件部分③循环体部分④迭代部分

1.for 循环

for(①;②;④){

}

执行顺序:①-②-③-④-②-③-④-…-②-③-④-②截止

//死循环:

for(;;

//要循环执行的代码。

}

2.while 循环

while(②){

}

//死循环:

while(1>0){

//要循环执行的代码

}

注意:for 循环和 while 循环之间可以相互转化!

3.do-while 循环

do{

}while(②);

//程序至少执行一次!

掌握:1.会使用 for 循环和 while 循环

2.能够实现 for 循环和 while 循环的相互转化。

循环可以相互嵌套

例题 1.九九乘法表;

例题 2.输入 1-1000 之间的所有质数

2.7 关键字:break & continue

break

1.使用范围:循环结构或 switch-case 结构中。

2.在循环结构中:一旦执行到 break,代表结束当前循环。

continue

1.使用范围:循环结构

2.在循环结构中:一旦执行到 continue,代表结束当次循环。

相同点:如果 break 或 continue 后面还有代码,那么这些代码将不会被执行。所以当有代码,编译会出错!

如何使用标签,实现结束指定“层次”的循环。(理解)

例题:

class Test{

public static void main(String[] args){

for(int i = 1 ;i <= 100;i++){

2.8 数组

1.如何创建一维数组

1)数组的声明: int[] i ; String[] str; Animal[] animal;

2)数组的初始化:

①动态初始化:i = new int[4]; //i[0]开始,至 i[3]结束。默认初始化值都为 0;

i[0] = 12;i[1] = 34;…

②静态初始化:str = new String[]{“山西”,“维信科技”,“java1085 班”};

//也是先有默认初始化赋值,然后显示的初始化,替换原来的默认初始化值//对于引用数据类型来说,默认初始化值为 null。

//对于基本数据类型来说: byte、short、int :0 long :0L float : 0.0F double :

0.0 char :’\u0000’ boolean : false 引用类型:null

2.数组元素的下角标从 0 开始。

  1. float[] f = new float[]{1.2F,3.4F,5.6F};

double[] d = new double[4]; d[1] = 3.4;…

4.数组的长度: .length;

5.数组的遍历:(习惯使用 for 循环)

for(int i = 0 ;i < f.length;i++){

System.out.print(f[i] + “\t”);

}

6.常见的异常:

1)ArrayIndexOutOfBoundsException :数组下标越界异常 下标从 0 开始,到

length-1 结束。如果下角标的取值不在此范围内,将报此异常

2)空指针异常(NullPointerException)

2.二维数组

①动态初始化:

—> int[][] i = new int[3][]; i[0] = new int[2]; i[1] = new int[3]; i[1] = new int[4];

—>String[][] str = new String[2][4];

② 静态初始化:

int[][] i = new int[][]{{1,2,3},{3,4},{0}};

2)遍历(补充完整)

7.数组常用的算法:最大值、最小值、和、平均数、排序(涉及数据结构中各种排序算法)、复制、反转。

8.Arrays:操作数组的工具类

Array.sort(数组类型形参); 可以对形参部分的数组进行排序,默认是从小到

大的顺序。

相关文章: