diff --git "a/22 \345\274\240\351\276\231\350\205\276/20230320 java\345\237\272\347\241\200\350\257\255\346\263\225\344\275\234\344\270\232.md" "b/22 \345\274\240\351\276\231\350\205\276/20230320 java\345\237\272\347\241\200\350\257\255\346\263\225\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..b0bdd87575ab217f3971bc5c8ed9410b0cb0cb84 --- /dev/null +++ "b/22 \345\274\240\351\276\231\350\205\276/20230320 java\345\237\272\347\241\200\350\257\255\346\263\225\344\275\234\344\270\232.md" @@ -0,0 +1,387 @@ + + + + +# 笔记 + + + + + +~~~ java +基本数据类型 + byte + short + int + long 超过int末尾加L大写,小写不好分辨 + float 末尾加F + double + char + boolean +~~~ + + + + + +string 为引用类型,不是基本数据类型 + +基本数据类型:计算机可以直接识别拿来使用的 + +常量:在程序执行过程中,其值不可以发生改变的量 + +变量:在程序执行过程中,其值可以发生改变的量 + + + + + + + + + + + +# 作业 + + + + + +## 巩固题 + +## 1、输出你最想说的一句话! + +* 编写步骤: + +1. 定义类 Homework1 + +2. 定义 main方法 + +3. 控制台输出5行字符串类型常量值 + + ~~~ java + package homework; + + public class homework1 { + public static void main(String[] args) { + System.out.println("我"); + System.out.println("真"); + System.out.println("的"); + System.out.println("服"); + System.out.println("了"); + } + } + ~~~ + + + +## 2、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/1.jpg) + +* 编写步骤: + +1. 定义类 Homework2 +2. 定义 main方法 +3. 控制台输出5行字符串类型常量值 +4. 控制台输出5行字符类型常量值 + +~~~ java +package homework; + +public class homework2 { + public static void main(String[] args) { + System.out.println("善学如春起之苗"); + System.out.println("不见其增,日有所长"); + System.out.println("假学如磨刀之石"); + System.out.println("不见其损,年有所亏"); + System.out.println("加油吧!少年"); + System.out.println('J'); + System.out.println('A'); + System.out.println('V'); + System.out.println('A'); + System.out.println('!'); + } +} + +~~~ + + + +## 3、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/3.jpg) + +- 编写步骤: + + 1. 定义类 Homework3 + + 2. 定义 main方法 + + 3. 控制台输出所有布尔类型常量值 + + ~~~java + package homework; + + public class homework3 { + public static void main(String[] args) { + boolean a =true; + boolean b = false; + System.out.println(a); + System.out.println(b); + } + } + + ~~~ + + + +## 4、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/4.jpg) + +- 编写步骤: + + 1. 定义类 Homework4 + + 2. 定义 main方法 + + 3. 定义2个 byte类型变量,分别赋byte类型范围内最大值和最小值,并输出在控制台. + + 4. 定义2个 short类型变量,分别赋short类型范围内的值,并输出在控制台. + + 5. 定义2个 int类型变量,分别赋int类型范围内的值,并输出在控制台. + + 6. 定义2个 long类型变量,分别赋超过int类型范围的值,并输出在控制台. + + ~~~ java + package homework; + + public class homework4 { + public static void main(String[] args) { + System.out.println("最大值:"+Byte.MAX_VALUE); + System.out.println("最小值:"+Byte.MIN_VALUE); + System.out.println("最大值:"+Short.MAX_VALUE); + System.out.println("最小值:"+Short.MIN_VALUE); + System.out.println("最大值:"+Integer.MAX_VALUE); + System.out.println("最小值:"+Integer.MIN_VALUE); + long num1=-2147483649L; + long num2=2147483648L; + System.out.println(num1); + System.out.println(num2); + + } + } + + ~~~ + + + +## 5、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/5.jpg) + + + +* 编写步骤: + 1. 定义类Homework5 + + 2. 定义 main方法 + + 3. 定义2个 float类型变量,分别赋值,并输出在控制台. + + 4. 定义2个 double类型变量,分别赋值,并输出在控制台. + + ~~~ java + package homework; + + public class homework5 { + public static void main(String[] args) { + float num1=-3.14F; + float num2=3.14F; + double num3=-3.4; + double num4=3.4; + System.out.println(num1); + System.out.println(num2); + System.out.println(num3); + System.out.println(num4); + + } + } + + ~~~ + + + +## 6、交换两个变量的值 + +编写步骤: + +1. 定义类Homework6 + +2. 定义 main方法 + +3. 定义两个整数变量a,b并赋值 + +4. 控制台输出变量a,b互换前的值 + +5. 定义一个第三方变量temp + +6. 利用第三方变量temp使a,b的值互换 + +7. 控制台输出变量a,b互换后的值 + + ~~~ java + package homework; + + public class homework6 { + public static void main(String[] args) { + int a=10; + int b=20; + System.out.println("互换前"); + System.out.println(a); + System.out.println(b); + int temp; + temp=a; + a=b; + b=temp; + System.out.println("互换后"); + System.out.println(a); + System.out.println(b); + } + } + + ~~~ + + + +![image-20211219152628406](01_Java基础语法图片/image-20211219152628406.png) + +## 7、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/8.png) + + + +* 开发提示:四则运算的符号 + + ```java + 加: + + 减: - + 乘: * + 除: / + ``` + +* 编写步骤: + + 1. 定义类 Homework7 + + 2. 定义 main方法 + + 3. 定义2个int类型变量x、y,x赋值为100,y赋值为200 + + 4. 定义新变量add,保存变量x,y的和并打印到控制台 + + 5. 定义新变量sub,保存变量x,y的差并打印到控制台 + + 6. 定义新变量mul,保存变量x,y的积并打印到控制台 + + 7. 定义新变量div,保存变量x,y的商并打印到控制台 + + ~~~ java + package homework; + + public class homework7 { + public static void main(String[] args) { + int x=100,y=200; + int add,sub,mul,div; + add=x+y; + sub=x-y; + mul=x*y; + div=x/y; + System.out.println("x,y的和为:"+add); + System.out.println("x,y的差为:"+sub); + System.out.println("x,y的积为:"+mul); + System.out.println("x,y的商为:"+div); + } + } + + + ~~~ + + + +## 8、按步骤编写代码,效果如图所示: + +![](01_Java基础语法图片/9.png) + +- 开发提示:四则运算的符号 + + ```java + 加: + + 减: - + 乘: * + 除: / + ``` + +- 编写步骤: + + 1. 定义类 Homework8 + + 2. 定义 main方法 + + 3. 定义2个double类型变量x、y,x赋值为100.8,y赋值为20.6 + + 4. 定义新变量add,保存变量x,y的和并打印到控制台 + + 5. 定义新变量sub,保存变量x,y的差并打印到控制台 + + 6. 定义新变量mul,保存变量x,y的积并打印到控制台 + + 7. 定义新变量div,保存变量x,y的商并打印到控制台 + + ~~~ java + package homework; + + public class homework8 { + public static void main(String[] args) { + double x=100.8,y=20.6; + double add,sub,mul,div; + add=x+y; + sub=x-y; + mul=x*y; + div=x/y; + System.out.println("x,y的和为:"+add); + System.out.println("x,y的差为:"+sub); + System.out.println("x,y的积为:"+mul); + System.out.println("x,y的商为:"+div); + } + } + + ~~~ + + + +## 9、简答题 + +(1)Java的基本数据类型有哪些?String是基本数据类型吗? + +```java +Java的基本数据类型有:byte,short,int,long,float,double,char,boolean + String不是基本数据类型 +``` + +(2)float f=3.4;是否正确,表达式15/2*2的值是多少 + +```java +float f=3.4; //错误,因为3.4默认是double类型 + System.out.println(15/2*2); //14,因为15/2结果是7 +``` + +(3)char型变量中是否可以存储一个汉字? + +``` +可以 +``` + diff --git "a/22 \345\274\240\351\276\231\350\205\276/20230328 java\345\237\272\347\241\200\347\273\203\344\271\240.md" "b/22 \345\274\240\351\276\231\350\205\276/20230328 java\345\237\272\347\241\200\347\273\203\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..f3ba55e23b55de364e922b7bfbada2b497ee9515 --- /dev/null +++ "b/22 \345\274\240\351\276\231\350\205\276/20230328 java\345\237\272\347\241\200\347\273\203\344\271\240.md" @@ -0,0 +1,269 @@ +# 笔记 + +~~~ java +// 创建扫描器 + +Scanner 扫描器名字=new Scanner(System.in); + +// 设置一个接受char字符类型的东东,ss为扫描器名字 + +char num= ss.next().charAt(0); + +// if与else格式 + +if(条件){ + 输出语句 +}else{ + 输出语句 +} + +//运算符 + +&& 为短路判断运算符,前面错了后面的就不运算了。 || 相当于并联,前面错了不影响后面 + +&相当于and +|相当于or +^相当于异或,不能有相等的关系 +!相当于not,结果相反 + + +//三元运算符 语法: 关系表达式 ? 表达式1 : 表达式2; + + 比较都是从右往左开始的 例子:double MinMoney= (money3='0' & num<='9'){ + System.out.println("该字符数据是数字类型"); + }else { + System.out.println("该字符数据不是数字类型"); + } + + } +} + +~~~ + + + + + +**2、判断一个字符数据是否是字母字符** + +**分析:** + +​ 1、需要判断一个字符是否是字母字符,首先需要提供一个字符数据 + +​ 2、字符是否为字母字符: 数字字符的范围 a - z 或者 A - Z 之间都属于字母字符,因此提供的字符只要大于或等于a,并且还要下于或等于z 或者 大于或等于A,并且还要下于或等于Z + +​ 3、判断完成之后,打印判断的结果。 + +~~~ java +import java.util.Scanner; + +public class a2 { +// 2、判断一个字符数据是否是字母字符 + public static void main(String[] args) { + + Scanner ss=new Scanner(System.in); + char num= ss.next().charAt(0); +// && 为短路判断运算符,前面错了后面的就不运算了。 || 相当于并联,前面错了不影响后面 + if ((num >='a' && num<='z') ||(num>='A' && num<='Z')){ + System.out.println("该字符数据是字母字符"); + }else { + System.out.println("该字符数据不是字母字符"); + } + + } + + } + + +~~~ + + + +**3、判断指定的年份是否为闰年,请使用键盘录入** + +**分析:** + +​ 1、闰年的判断公式为:能被4整除,但是不能被100整除 或者 能被400整除 + +​ 2、首先需要提供一个需要判断的年份,判断完成之后,打印判断的结果。 + +~~~ java +import java.util.Scanner; + +public class a3 { +// 3、判断指定的年份是否为闰年,请使用键盘录入 + public static void main(String[] args) { + Scanner ss=new Scanner(System.in); + int year= ss.nextInt(); +// % 为余数,==0表示,余数为0,即没有余数 + if (year%4==0 && year%100==0 && year%400==0){ + System.out.println("该年是闰年"); + }else { + System.out.println("该年不是闰年"); + } + } +} + +~~~ + + + +**4、判断一个数字是否为水仙花数,请使用键盘录入** + +水仙花是指3位数字,表示的是每位上的数字的3次幂相加之后的和值和原数相等,则为水仙花数, + +**分析:** + +​ 如:153 ---> 1×1×*1 + 5*×5×*5 + 3×*3×3 = 153; 就是水仙花数 + +​ 1、首先需要提供一个需要判断的3位数字,因此需要一个数值 + +​ 2、判断的过程 + +​ a) 将3位数字的每一位上的数字拆分下来 + +​ b) 计算每位数字的3次幂之和 + +​ C) 用和值 和 原来的数字进行比较 + +​ D) 打印判断的比较结果即可 + +~~~ java +import java.util.Scanner; + +public class a4 { +// 4、判断一个数字是否为水仙花数,请使用键盘录入 +// 水仙花是指3位数字,表示的是每位上的数字的3次幂相加之后的和值和原数相等,则为水仙花数. + public static void main(String[] args) { + Scanner ss=new Scanner(System.in); + int num= ss.nextInt(); +// 求个位数 + int gewei=num%10; +// 求十位数 + int shiwei=num/10%10; +// 求百位数 + int baiwei=num/100%10; + int sum=(gewei*gewei*gewei)+(shiwei*shiwei*shiwei)+(baiwei*baiwei*baiwei); + if (num==sum){ + System.out.println("该数是水仙花数"); + }else { + System.out.println("该数不是水仙花数"); + } + + } +} + +~~~ + + + +**5、判断一个5位数字是否为回文数,使用键盘录入** + +五位数的回文数是指最高位和最低位相等,次高位和次低位相等。如:12321  23732  56665 + +**分析:** + +​ 1、首先需要提供一个需要判断的5位数字,因此需要一个数值 + +​ 2、判断的过程 + +​ a) 将5位数字的万、千、十、个位数拆分出来 + +​ b) 判断比较万位和个位 、 千位和十位是否相等 + +​ 3、判断完成之后,打印判断的结果。 + +~~~ java +import java.util.Scanner; + +public class a5 { +// 5、判断一个5位数字是否为回文数,使用键盘录入 +// 五位数的回文数是指最高位和最低位相等,次高位和次低位相等。 +public static void main(String[] args) { + Scanner ss= new Scanner(System.in); + System.out.println("请输入一个五位数"); + int num= ss.nextInt(); + int ge=num%10; + int shi=num/10%10; + int bai=num%100%10; + int qian=num/1000%10; + int wan=num/10000%10; + if (wan==ge && qian==shi){ + System.out.println("你输入的数是回文数"); + }else{ + System.out.println("你输入的数不是回文数"); + } + + +} + +} + +~~~ + + + + + + + +######