Java基础语法(下)

📅 2026/7/6 14:23:20 👁️ 阅读次数 📝 编程学习
Java基础语法(下)

4.数据类型与变量

前置知识:
1GB=1024MB
1MB=1024KB
1KB=1024Byte
1byte = 8bit
注:bit比特-二进制位1bit:0/1 2bit: 00/01/10/11
·数据类型
整数型:byte short int long (类型名称) | 8 16 32 64 (占用位数)
浮点型:float double | 32 64
单精度:float最多精确到小数点后7
双精度:double最多精确到小数点后15
字符型:char | 16
无符号,每个数字表示一个字符 只能表示单个字符 使用单引号括起来
例如:char c = 'a',c1 = '中';
注:字符串类型:String表示多个字符 使用双引号 底层就是字符型(但其本身不是基本数据类型)
布尔型:boolean | 8
只有两个值 true/false 命名:乔治·布尔(George Boole
·变量

变量作为数据的“代词”,一次定义后可以多次使用,其目的是解决直接写固定数值的问题,避免修改几十处代码的出错风险,使代码优化

下面提供两个实例:

实例一:

package xzn0630; public class HelloWorld { static void main() { int length = 158; int width = 200; int area_1 = length * width; int perimeter = (length + width) * 2; String unit_1 = "m"; String unit_2 = unit_1+"²"; System.out.println("===矩形计算2.0==="); System.out.println("长度:"+length+unit_1); System.out.println("宽度:"+width+unit_1); System.out.println("面积:"+area_1+unit_2); System.out.println("周长:"+perimeter+unit_1); } }

运行结果

===矩形计算2.0=== 长度:158m 宽度:200m 面积:31600m² 周长:716m

实例2:

public class HelloWorld { static void main() { double pi = 3.14; int radius = 3; double circumference = radius*pi*2; double area_2 = (radius*radius)*pi; String unit_3 = "cm"; String unit_4 = unit_3+"²"; System.out.println("===圆形计算器==="); System.out.println("圆周率:"+pi); System.out.println("半径:"+radius+unit_3); System.out.println("周长:"+circumference+unit_3); System.out.println("面积:"+area_2+unit_4); } }

运行结果

===圆形计算器=== 圆周率:3.14 半径:3cm 周长:18.84cm 面积:28.26cm²

-单位变量技巧:将单位(如cm、cm2)单独定义为变量,这样修改单位时仅需改1处,所有引用位置自动同步


5.运算符

·算术:+ - * / %
1)整数相除的结果还是整数,小数部分全部舍弃。 如: 7/3=2
2)浮点数与整数运算的结果,还是浮点数。如: 7/3.0=2.333
3)% 模运算 取余数 如:7%3=1 123%10=3(取个位数) 12345/10%10=4(取十位数)
-用代码实现:判断一个5位数是否对称如:21312
public class 作业2 { static void main() { //1: 判断一个3位数/5位数是否是对称数 int num_1 = 21312; int n1 = num_1 % 10; int n2 = num_1 / 10 % 10; int n3 = num_1 / 100 % 10; int n4 = num_1 / 1000 % 10; int n5 = num_1 / 10000 % 10; if(n1==n5 && n2==n4) { System.out.println(num_1 + "是对称数"); }else { System.out.println(num_1 + "不是对称数"); } } }

运行结果

21312是对称数
·赋值:=将右边的结果/值赋给左边的变量int n=10; int n1=100*2; n=n+n1;
1) 赋值与算术结合: += 、-=*=/=%=
例如n=n+10,简写为 n+=10;
2)++、--: 单位为1的自增 自减
n=n+1,简写为n++; n+=1;
·比较:== != < > <= >=
比较运算的结果只有两个: true false
注:不能在一个变量的前后同时比较,如10<n<100就是错误写法,正确写法是n>10&&n<100
·逻辑:&& || !
与: &&两边的条件都要成立 整体才是true
或: ||两边条件只要有一个成立 整体就是true
非: !取反!true相当于false !n<10等同于n>=10

6.条件判断语句

·if-else
1)if(条件){代码}条件成立就执行括号内的代码
2)if(条件){代码1 }else{代码2 }二选一,条件成立就执行括号内的代码1,条件不成立就执行
括号内的代码2
-案例1:判断一个三位数是否是水仙花数(如153)
public class 作业2 { static void main() { //2: 判断一个三位数是否是水仙花数 int num_2 = 153; int n6 = num_2 % 10; int n7 = num_2 / 10 % 10; int n8 = num_2 / 100 % 10; if(num_2 == n6*n6*n6 + n8*n8*n8 + n7*n7*n7){ System.out.println(num_2 + "是水仙花数"); }else{ System.out.println(num_2 + "不是水仙花数"); } } }

运行结果

153是水仙花数

案例2:设定三个整数a、b、c,判断其是否可以作为一个三角形的三条边

public class 作业2 { static void main() { //4: 设定三个整数 a b c 判断是否可以作为一个三角形的三条边 int a = 3; int b = 4; int c = 5; if(a+b>c && a+c>b && b+c>a){ System.out.println(a + "," + b + "," + c + "可以作为三角形的边"); }else{ System.out.println(a + "," + b + "," + c + "不可以作为三角形的边"); } } }

运行结果

3,4,5可以作为三角形的边
3)if(条件1){代码1 }else if(条件2){代码2 }else{代码3 }取第一个成立条件的代码区域执行
注意:else if是先否则再如果,即条件2成立时,不会执行代码1
-案例:判断一个年份是否是闰年(如2020年)
public class 作业2 { static void main() { //3: 判断一个年份是否是闰年 闰年规则:能被4整除,不能被100整除,或者能被400整除 int year = 2020; int y1 = year % 400; int y2 = year % 4; int y3 = year % 100; if(y1 == 0) { System.out.println(year + "是闰年"); }else if (y2==0 && y3!=0){ System.out.println(year + "是闰年"); }else{ System.out.println(year + "不是闰年"); } } }

运行结果

2020是闰年