标题:Java语言基础知识点梳理与总结
导语:
Java是一种广泛应用于软件开发领域的编程语言,具有简单、面向对象、可移植、安全等特点。本篇博客是笔者作为初学者学习后对Java语言的基础知识点进行详细梳理与总结,包括标识符、运算符、流程控制、循环结构、分支结构、数组、方法、类与对象等,笔者作为小白一枚,如果错误敬请赐教!
一、标识符:
1. 标识符是用来标识变量、方法、类、包等的名称。在Java中,标识符必须符合以下命名规则:
- 可以以字母、下划线(_)或美元符号($)开头,后面可以是字母、数字、下划线或美元符号。
- 不能使用Java的关键字作为标识符。
- 区分大小写,例如"myVar"和"myvar"是不同的标识符。
- 用驼峰命名法命名,类名和方法名尽量明确,要让人可以一眼看出该类或方法的功能。
- 常量名应该全部大写,使用下划线分隔单词,如 MY_CONSTANT。
// 类名使用首字母大写,采用驼峰命名法
public class MyClass {
// 常量名使用全部大写,使用下划线分隔单词
public static final int MY_CONSTANT = 10;
// 方法名使用小写字母开头,采用驼峰命名法
public void myMethod() {
// 变量名使用小写字母开头,采用驼峰命名法
int myVariable = 5;
// 对象引用使用小写字母开头,采用驼峰命名法
MyClass myObject = new MyClass();
// 包名使用小写字母,可以使用多级分隔符
com.example.mypackage.MyClass myPackageObject = new com.example.mypackage.MyClass();
// 使用关键字作为标识符是不被允许的
// int class = 10; // 错误,不能使用关键字作为标识符
}
}
二、运算符:
1. Java提供了多种基本运算符,用于进行数学运算、关系判断和逻辑操作。
- 算术运算符:用于对数值进行加(+)、减(-)、乘(*)、除(/)和取模(%)等数学操作。
- 关系运算符:用于比较两个值之间的关系,如等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)和小于等于(<=)。
- 逻辑运算符:用于组合逻辑条件,如与(&&)、或(||)和非(!)。
与运算符(&&):当两个条件都为真时,整个条件表达式才为真。例如,如果条件A为真,并且条件B也为真,那么表达式A && B为真,否则为假。
或运算符(||):只需其中一个条件为真,整个条件表达式就为真。例如,如果条件A为真,或者条件B为真,那么表达式A || B为真,只有在两个条件都为假时,表达式才为假。
非运算符(!):用于取反一个条件的值。例如,如果条件A为真,那么表达式!A为假;如果条件A为假,那么表达式!A为真。
这些逻辑运算符可以使程序能够根据不同的条件执行不同的操作,控制程序的流程和决策。在编写代码时,逻辑运算符经常与比较运算符一起使用,以便实现更复杂的逻辑判断。
int x = 5;
int y = 10;
boolean a = true;
boolean b = false;
// 逻辑与运算符(&&)
if (x > 0 && y > 0) {
System.out.println("x和y都大于0");
}
// 逻辑或运算符(||)
if (x > 0 || y > 0) {
System.out.println("x或y大于0");
}
// 逻辑非运算符(!)
if (!a) {
System.out.println("a为真");
} else {
System.out.println("a为假");
}
三、流程控制:
1. 流程控制用于根据条件决定程序的执行路径,Java提供了以下两种流程控制语句:
- 条件语句(if-else语句):根据条件的真假选择不同的执行路径。
- if语句:当条件为真时执行,可以通过else语句补充,表示当条件为假时执行。
- else if语句:可以用于判断多个条件,不同条件间互斥。
int x = 5;
// if语句
if (x > 0) {
System.out.println("x大于0");
} else {
System.out.println("x小于等于0");
}
// else if语句
if (x > 10) {
System.out.println("x大于10");
} else if (x > 5) {
System.out.println("x大于5,小于等于10");
} else {
System.out.println("x小于等于5");
}
- 循环语句:用于重复执行某段代码直到满足退出条件为止。
- for循环:在已知循环次数时使用,包括初始化、条件判断和循环迭代三部分。
- while循环:在不确定循环次数时使用,通过判断条件来控制循环执行。
- do-while循环:与while循环类似,但是至少执行一次循环体,然后再判断条件是否满足。
// for循环
for (int i = 0; i < 5; i++) {
System.out.println("i的值是:" + i);
}
// while循环
int i = 0;
while (i < 5) {
System.out.println("i的值是:" + i);
i++;
}
// do-while循环
int j = 0;
do {
System.out.println("j的值是:" + j);
j++;
} while (j < 5);
四、分支结构:
1. 分支结构用于根据条件的不同选择不同的执行路径,Java提供了以下两种分支结构:
- if-else语句:根据条件的真假选择不同的执行路径。可以使用多个嵌套的if-else语句来实现对复杂条件的判断。
//if嵌套
int num = 10;
if (num > 0) {
if (num % 2 == 0) {
System.out.println("num是一个正偶数");
} else {
System.out.println("num是一个正奇数");
}
} else if (num < 0) {
if (num % 2 == 0) {
System.out.println("num是一个负偶数");
} else {
System.out.println("num是一个负奇数");
}
} else {
System.out.println("num是零");
}
- switch语句:根据表达式的值选择不同的执行路径。
- case语句:与表达式的值进行匹配,如果匹配成功则执行相应的代码块。
- default语句:用于处理未匹配到任何case的情况,相当于if-else语句中的else部分。
int dayOfWeek = 3;
String day;
switch (dayOfWeek) {
case 1:
day = "星期一";
break;
case 2:
day = "星期二";
break;
case 3:
day = "星期三";
break;
case 4:
day = "星期四";
break;
case 5:
day = "星期五";
break;
default:
day = "未知";
break;
}
System.out.println("今天是" + day);
五、数组:
1. 数组是一种用来存储多个相同类型数据的容器,在Java中可以是一维数组或多维数组。
- 一维数组:由相同类型的元素按一定顺序排列而成,通过索引可以访问和修改数组中的元素。
- 数组的声明和初始化:可以使用简单的声明语句声明数组,并通过赋值初始化数组元素。
- 数组的操作:可以通过索引访问和修改数组的元素,还可以获取数组的长度。
// 声明一个整型数组,长度为5
int[] numbers = new int[5];
// 初始化数组元素
numbers[0] = 10;
numbers[1] = 20;
numbers[2] = 30;
numbers[3] = 40;
numbers[4] = 50;
// 使用循环遍历数组元素并打印
for (int i = 0; i < numbers.length; i++) {
System.out.println("numbers[" + i + "] = " + numbers[i]);
}
- 多维数组:由一维数组组成的数组,可以按照行和列的方式组织数据。
- 二维数组:可以通过行和列的索引访问和修改元素,即arr[row][column]。
// 声明一个二维整型数组,3行4列
int[][] matrix = new int[3][4];
// 初始化数组元素
matrix[0][0] = 1;
matrix[0][1] = 2;
matrix[0][2] = 3;
matrix[0][3] = 4;
matrix[1][0] = 5;
matrix[1][1] = 6;
matrix[1][2] = 7;
matrix[1][3] = 8;
matrix[2][0] = 9;
matrix[2][1] = 10;
matrix[2][2] = 11;
matrix[2][3] = 12;
// 使用嵌套循环遍历二维数组元素并打印
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
System.out.println("matrix[" + i + "][" + j + "] = " + matrix[i][j]);
}
}
六、方法:
1. 方法是一段可重复使用的代码块,用于完成特定的功能。在Java中,方法由方法名、参数列表、返回类型和方法体组成。
- 方法名:用于唯一标识方法。
- 参数列表:用于传递方法所需要的数据,可以为空。
- 返回类型:方法执行后返回的数据类型,可以是基本类型或引用类型。
- 方法体:包含了方法的具体实现。
- 方法的调用:通过方法名加上实参列表的方式调用方法。
public class Example {
// 定义方法,计算两个整数的乘积并返回结果
// multiply 方法名
// a,b 参数
//返回类型 int
// 方法体{} 内包含了该乘积方法的具体实现
public static int multiply(int a, int b) {
int product = a * b;
return product;
}
public static void main(String[] args) {
// 调用方法并打印结果
int result = multiply(5, 3);
System.out.println("结果是:" + result);
}
}
七、类与对象:
1. 类是一种面向对象的封装,用于描述具有相同属性和行为的对象。在Java中,通过类来创建对象。
- 类:用于定义对象的属性和行为,包括成员变量和方法。
- 成员变量:用于表示对象的属性,可以在类中声明并赋初值。
- 方法:用于表示对象的行为,可以在类中定义方法来完成相应的操作。
- 对象:类的实例化结果,通过new关键字创建,并可以调用类中定义的方法和访问类中的成员变量。
// 定义一个Person
public class Person {
// 成员变量
String name;
int age;
// 方法
public void sayHello() {
System.out.println("大家好,我叫" + name + ",今年" + age + "岁。");
}
}
// 创建Person类的对象
Person person = new Person();
// 给对象的成员变量赋值
person.name = "Tom";
person.age = 20;
// 调用对象的方法
person.sayHello();
结语:
通过深入理解标识符、运算符、流程控制、循环结构、分支结构、数组、方法、类与对象等相关知识点,您可以更好地应用于实际的Java开发中,并构建高效、可靠的程序。希望本篇博客能为您提供帮助,如有任何疑问或建议,请随时提出。