
目录
- 1、变量
- 1.1 变量声明
- 1.2 类变量与实例变量
- 1.3 变量初始化
 
- 2、数据运算
- 2.1 算术运算
- 2.2 赋值运算
- 2.3 比较运算
 
- 3、条件语句
- 3.1 条件语句
- 3.2 多重条件(switch)
 
- 4 循环语句
- 4.1 while循环
- 4.2 do while循环
- 4.3 for循环
 
1、变量
1.1 变量声明
Java变量是用于存储数据的一种命名内存位置。在Java中,每个变量都有一个特定的数据类型,比如:整数、浮点数、布尔值等。
在Java中,变量的使用必须先进行声明,指定变量的名称和类型。声明变量后,可以给它赋予特定的值,并随后在程序中引用和操作该值。
变量声明时的命名规则,需要遵循一定规则:
- 变量名包含字母、数字和下划线,且以字母或下划线开头。
- 变量名区分大小写。
- 避免使用Java关键字作为变量名。
- 变量名应具有描述性,能清楚表达变量的用途。
变量声明:
// 单个变量声明
int a;
// 多个变量声明
int i,j,k;
1.2 类变量与实例变量
在Java中,变量可以根据其所属的上下文和作用域分为两种类型:静态变量(类变量)和实例变量。
静态变量(类变量):
- 静态变量属于类本身,而不是类的任何特定实例。
- 它们在类加载时创建,存在于整个程序的生命周期中。
- 静态变量使用static关键字进行声明。
- 所有该类的实例共享相同的静态变量。
- 静态变量可以通过类名直接访问,无需创建类的实例。
- 通常用于存储与类相关的共享数据。
public class Main{
	// 静态变量声明
   private static int a; 
    public static void main(String[] args) {
     	// 直接使用静态变量
        a= 10;
        System.out.println(a);
    }
}
实例变量:
- 实例变量属于类的实例(对象),每个对象都有自己的一份。
- 它们在创建对象时分配内存,并随着对象的销毁而被销毁。
- 实例变量不使用 static 关键字进行声明。
- 每个对象都有自己的实例变量副本,彼此独立。
- 实例变量需要通过对象引用来访问。
public class Main{
	// 变量声明
   private int a; 
    public static void main(String[] args) {
		Main m = new Main();
		// 使用实例变量
        m.a= 10;
        System.out.println(m.a);
    }
}
1.3 变量初始化
在变量声明后,如果要使用该变量,必须先进行初始化操作,否则会导致运行时程序报错,比如以下错误的使用:
// 变量声明
int a;
// 直接使用未初始化的变量,会导致报错
System.out.println(a);
在进行初始化操作时,可以直接声明时初始化,也可以声明后赋值初始化。
- 直接初始化:在声明变量的同时,使用赋值操作符将初始值赋给变量。
int a = 10;
System.out.println(a);
- 赋值初始化:在使用变量前,再对变量进行初始化。
int a;
a = 10;
System.out.println(a);

2、数据运算
Java提供了多种运算符,用于执行各种操作,包括算术运算、赋值运算、比较运算、逻辑运算等。以下是Java中常见的运算符类型:算术运算符、赋值运算符、比较运算符、逻辑运算符
2.1 算术运算
- 算术运算符:用于执行基本的数学运算。 
  - +:加法
- -:减法
- *:乘法
- /:除法
- %:取模(取余)
 
在算术运算符中,如果使用/(除法)时,两个操作数都是整数结果也是整数,比如:
int a = 10/3; // 结果为3,而不是3.33333.....
当操作数的类型不同时,那么就会进行数值类型之间的转换,比如:
double v1 = 100.22d / 100;
float v2 = 100.22f / 100;
long v3 = 100L / 100;
转换基本规则如下:
- 如果,存在一个数据类型为double类型,则结果会转换为double类型;
- 否则,存在一个数据类型为float类型,则结果会转换为float类型;
- 否则,存在一个数据类型为long类型,则结果会转换为long类型;
2.2 赋值运算
- 赋值运算符:用于将值赋给变量。 
  - =:赋值
- --:自减赋值,例如:- x--; 等价于- x = x - 1;
- ++:自增赋值,例如:- x++; 等价于- x = x + 1;
- +=:加并赋值,例如:- x += 5; 等价于- x = x + 5;
- -=:减并赋值,例如:- x -= 3; 等价于- x = x - 3;
- *=:乘并赋值,例如:- x *= 2; 等价于- x = x * 2;
- /=:除并赋值,例如:- x /= 4; 等价于x = x / 4`;
- %=:取模并赋值,例如:- x %= 3; 等价于- x = x % 3;
 
赋值运算是常用的一类运算符,因为可以直接对变量进行运算和赋值,比如:
int a = 10;
a+=5; // 结果为:15
a++; //结果为: 16
a--; //结果为: 15
a-=5; // 结果为:10
2.3 比较运算
- 比较运算符:用于比较两个值的关系,并返回布尔值。 
  - ==:相等
- !=:不相等
- >:大于
- <:小于
- >=:大于等于
- <=:小于等于
 
- 逻辑运算符:用于组合和操作布尔值。
3、条件语句
3.1 条件语句
在Java中,条件语句用于根据给定的条件来控制程序的执行流程,主要为:if、if else 、else if;
- if语句:使用 if 关键字来执行单一条件的判断,如果条件满足(即为真),则执行特定的代码块。int a = 1; if (a > 0) { System.out.println("this is true"); }
- if-else语句:除了执行满足条件的代码块,还可以在条件不满足时执行另一组代码块,使用 else 关键字。int a = 1; if (a < 0) { System.out.println("this is true"); }else{ System.out.println("this is false"); }
- else if语句:用于在多个条件之间进行判断。如果第一个条件不满足,将依次检查后续的 else if 条件,直到找到满足的条件为止。int a = 1; if (a < 0) { System.out.println("this is a < 0"); }else if(a == 0){ System.out.println("this is a == 0"); }else if(a == 1){ System.out.println("this is a == 1"); }else{ System.out.println("this is a > 1"); }
需要注意的是,存在多个if else时else子语句与最近的if构成一组条件,比如:
1.	int a = 1;
2.	if (a < 0) {
3.		if(a < -10){
4.			System.out.println("this is a < -10");
5.		}else{
6.			System.out.println("this is a >= -10");
7.		}
8.	}else{
9.		System.out.println("this is a >= 0");
10.	}
在这里,出现了多个if else,并且从第3行~第7行使用了if else子语句,因此第三行的if与第五行的else为一组条件语句。
3.2 多重条件(switch)
switch语句:适用于在多个可能值之间进行选择,并根据选择执行相应的代码块。每个 case 表达式后面必须跟着一个 break 语句,以避免执行其他 case 中的代码。
通过switch语句可以解决使用过多if else if带来的代码冗余,switch语句将目标值与case值进行比较,满足条件则执行,并且使用break语句结束当前语句,如果没有匹配到case,则执行default 子句。
case 标签可以是:
- 类型为 char、byte、 short 或 int 的常量表达式。
- 枚举常量。
- 从 Java SE 7开始, case 标签还可以是字符串字面量。
if else if与switch case对比:
if else if 写法:
int a = 3;
if (a == 0) {
   System.out.println("a==0");
} else if (a == 1 || a == 2) {
   System.out.println("a==1 || a==2");
} else if (a == 3) {
   System.out.println("a==3");
} else {
   System.out.println("a > 3");
 }
switch case写法:
int a = 3;
switch (a) {
   case 0:
     System.out.println("a==0");
     break;
  case 1:
  case 2:
    System.out.println("a==1 || a==2");
    break;
 case 3:
    System.out.println("a==3");
    break;
 default:
   System.out.println("a > 3");
}
需要注意的时
switch case不支持范围比较,比如a<0,无法通过switch case进行实现
4 循环语句
在Java中,循环语句用于重复执行一段代码,直到满足特定的条件。Java提供了几种类型的循环语句:for循环、while循环、do-while循环。
循环语句的使用允许我们重复执行特定的代码块,可以根据条件灵活地控制循环的次数。在循环中,通常需要使用适当的控制语句(如break和continue)来提前终止循环或跳过当前迭代。谨记在循环中更新循环变量,以避免进入无限循环。
4.1 while循环
在未知循环次数但需要先检查条件的情况下使用,只要条件为真,循环就会一直执行,在执行前就需要满足判断条件,可以使用
break跳出循环。
int i = 0;
while (i < 5) {
    System.out.println(i);
    i++;
}
int i = 0;
while (true) {
	if(i>=5){
		// 结束while语句
		break;
	}
    System.out.println(i);
    i++;
}
4.2 do while循环
类似于while循环,不同之处在于先执行一次循环体,然后再检查条件,只要条件为真,循环会继续执行,会先执行一次,然后再判断是否满足条件,满足则继续循环执行,可以使用
break跳出循环。
int i = 0;
do{
	System.out.println(i);
    i++;
}
while (i < 5);
int i = 0;
do{
	if(i>=5){
		// 结束while语句
		break;
	}
	System.out.println(i);
    i++;
}
while (true);
4.3 for循环
在已知循环次数的情况下使用,通过指定循环变量的初始值、循环条件和每次迭代后的更新操作来控制循环执行。
for循环由三部分组成:初始值、判断条件、迭代部分,当初始值满足判断条件时则执行一次迭代部分语句,比如:
for (int i = 0; i < 5; i++) {
    System.out.println(i);
}
在上面的循环语句中:
- ①:int i = 0为初始值;
- ②:i < 5为判断条件,如果满足则执行System.out.println(i);
- ③:当执行代码块后,又执行i++,进行迭代
- ④:循环第 ②、③两个步骤,直到不满足判断条件后,自动退出循环
break与continue:
- break:跳出循环,结束当前的for循环语句;
- continue:满足执行条件下,不执行当前代码块的逻辑,直接执行迭代部分
比如,以下语句同时存在break与continue,并且执行结果为0、1、3
for (int i = 0; i < 5; i++) {
	if(i==2){
		// 不继续往下执行,直接执行`迭代部分`
		continue;
	}
	if(i==4){
		// 结束整个循环体,即使满足条件也不再执行for循环中的逻辑
		break;
	}
    System.out.println(i);
}
for语句无限循环写法,类似于while(true)
for(;;){
	System.out.println("无限循环");
}






![学习babylon.js --- [2] 项目工程搭建](https://img-blog.csdnimg.cn/d2abc129e72c46e3908f73454576b02c.png)













