diff --git "a/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221117\345\255\246\344\271\240Java\347\254\254\344\270\200\350\257\276\345\237\272\347\241\200.md" "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221117\345\255\246\344\271\240Java\347\254\254\344\270\200\350\257\276\345\237\272\347\241\200.md" new file mode 100644 index 0000000000000000000000000000000000000000..e2e5bc4a7d7c6f540e7cc9e41abcbfcd83035435 --- /dev/null +++ "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221117\345\255\246\344\271\240Java\347\254\254\344\270\200\350\257\276\345\237\272\347\241\200.md" @@ -0,0 +1,57 @@ +# java + +### Java基础 + +main方法是java程序的入口 + +sout快捷键——System out println + +//注释内容 Ctr+/ 再按一次取消 + +### 数据类型 + +数值型 整数:byte short int long + +​ 浮点数:float double + +​ 字符:char + +### 变量 + +根据变量名进行使用,可以输出,也可以修改值 + +##### 注意 + +1.变量名不能重复 + +2.变量未赋值不能使用 + +3.定义long类型变量,数据后加l + +4.定义folat类型变量,数据后加f + +### 标识符 + +不能数字开头,不能是关键字,区分大小写 + +```java +public class mm { + public static void main(String[] args) { + System.out.println("我爱2班,我爱张老师"); + } +} +``` + +```java +public class mm1 { + public static void main(String[] args) { + String name="张老师"; + int age=18; + char gender='男'; + System.out.println("名字:"+name); + System.out.println("年龄:"+age); + System.out.println("性别:"+gender); + System.out.println("”张老师,你是花儿,你是光。你是闽大顶呱呱.永远2班,年年十八等.”"); + } +} +``` diff --git "a/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221128Java\347\232\204\350\277\220\347\256\227\347\254\246\345\222\214\346\216\245\346\224\266\345\231\250.md" "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221128Java\347\232\204\350\277\220\347\256\227\347\254\246\345\222\214\346\216\245\346\224\266\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..11037ea0faab0b09df0e5712bebb2eee733a03cd --- /dev/null +++ "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221128Java\347\232\204\350\277\220\347\256\227\347\254\246\345\222\214\346\216\245\346\224\266\345\231\250.md" @@ -0,0 +1,208 @@ +### 笔记 + +#### 类型转换 + +##### 自动类型转换 + +类型从小到达 + +byte——short + +​ }int——long——float——double + +​ char + +##### 强制类型转换 + +目标数据类型 变量名=(目标数据类型)值或变量 + +强制转换后部分数据会丢失 + +byte short char 类型的数据参与运算后自动会变成int + + + +#### 运算符 + +##### 运算符的运用 + +1. + + +2. - + +3. * + +4. / 只会取商 + +5. % 取余数 + + 例子 + + ``` java + int a =10; + int b =3 + System.out.println(a/b); + 运算结果为3 + ``` + + + + + +##### 字符+ + +当+操作中,如果出现了字符串,则这个+ 是连接符,而不是算术运算。 + +运算法则是从左到右 + +##### 数值拆分 + +键盘录入一个三位数,将其拆分为个位,十位,百位,打印在控制台 + +~~~ java +import java.util.Scanner; +public class Test { + public static void main(String[] args) { + // 1:使用Scanner键盘录入一个三位数 + Scanner sc = new Scanner(System.in); + System.out.println("请输入一个三位数"); + int num = sc.nextInt(); + // 2:个位的计算:数值 % 10 + int ge = num % 10; + // 3:十位的计算:数值 / 10 % 10 + int shi = num / 10 % 10; + // 4:百位的计算:数值 / 100 + int bai = num / 100; + // 5:将个位, 十位, 百位拼接上正确的字符串, 打印即可 + System.out.println("整数"+num+"个位为:" + ge); + System.out.println("整数"+num+"十位为:" + shi); + System.out.println("整数"+num+"百位为:" + bai); + + } +} +~~~ + + + +#### 键盘录入 + +1. 创建一个扫描器 +2. 打印一个提升 +3. 根据输入的内容的类型,创建对应的变量来接受用户的输入 +4. 处理或使用变量 + +#### char字符 + +'a'=97 + +'b'= 98 + +'c'=99 + +'A'=65 + +'0'=48 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +```java +import java.util.Scanner; + +public class bbb { + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + System.out.println( "输入四位数字"); + int a=sc.nextInt(); + System.out.println("这位数字的个位数是:"+a%10); + System.out.println("这个数字的十位数是:"+a/10%10); + System.out.println("这个数字的百位数是:"+a/100%10); + System.out.println("这个数字的千位数是:"+a/1000%10); + + } + +} +``` + +```java +import java.util.Scanner; + +public class ccc { + public static void main(String[] args) { + Scanner sc=new Scanner(System.in); + System.out.println("华氏度转摄氏度"); + System.out.println("输入摄氏度"); + int a=sc.nextInt(); + System.out.println("华氏度:"+((a-32)*5/9)); + System.out.println("输入华氏度"); + int b=sc.nextInt(); + System.out.println("摄氏度:"+(b*9/5+32)); + } +} +``` \ No newline at end of file diff --git "a/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221204 for\345\276\252\347\216\257.md" "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221204 for\345\276\252\347\216\257.md" new file mode 100644 index 0000000000000000000000000000000000000000..1c3b3c176847de3c0cef373feedfe17dfb483928 --- /dev/null +++ "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221204 for\345\276\252\347\216\257.md" @@ -0,0 +1,86 @@ +### 笔记 + +#### 循环 + +##### 1.for 循环 + +```java +for(int i=1;i<=100;i++){ + System. out. println("我爱你"+i+"次") +} + +//效果 +//我爱你1次 +//我爱你2次 +``` + + + +for循环格式 + +```java +for(初始化语句;条件判断语句;条件控制语句){ + 循环体语句 +} +``` + +一旦看到有求和,求总数,求最大,最小就马上想到在循环外面定义一个新变量用来接收这个要求的数 + +### 作业 + +让用户输入一个数字,根据这个数字,循环输出"我爱学习,我爱java",比如,用户输入数字 9 就在控制台输出9行"我爱学习,我爱java" + +```java +import java.util.Scanner; + +public class eeeee { + public static void main(String[] args) { + Scanner sc=new Scanner(System.in); + System.out.println("请输入一个数字"); + int a=sc.nextInt(); + for (int i=1;i<=a;i++){ + System.out.println("我爱学习,我爱Java"); + } + } +} +``` + + + +用户分别输入数 a,数b,让程序实现从a 开始循环到b.输出"有生之年,能看到中国队出线吗?" + +```java +import java.util.Scanner; + +public class oh { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + System.out.println("请输入两个数字"); + int a = sc.nextInt(); + int b = sc.nextInt(); + if (a>b){ + System.out.println("输入错误,请输入第一个小于第二个的数"); + } + for (int i = a; i <= b; i++) { + System.out.println("有生之年,能看到中国队出线吗"); + } + + } + } +``` + +99乘法表 + +```java +public class ooo { + public static void main(String[] args) { + for (int i = 1; i <=9 ; i++) { + for (int j = 1; j <=i;j++){ + System.out.print(i+"*"+j+"="+i*j+"\t"); + } + System.out.println(); + } + } +} +``` + diff --git "a/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221206 while\345\276\252\347\216\257.md" "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221206 while\345\276\252\347\216\257.md" new file mode 100644 index 0000000000000000000000000000000000000000..63d5ed48061ce76a46992cb1166ab76c63608085 --- /dev/null +++ "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/20221206 while\345\276\252\347\216\257.md" @@ -0,0 +1,142 @@ +#### 循环语句-while循环 + +##### while循环完整格式: + +```java +初始化语句; +while (条件判断语句) { +循环体语句; +条件控制语句; +} + +``` + +#### while循环执行流程: + + ①执行初始化语句 + + ②执行条件判断语句,看其结果是true还是false + + 如果是false,循环结束 + + 如果是true,继续执行 + + ③执行循环体语句 + + ④执行条件控制语句 + + ⑤回到②继续 + +### 循环语句-dowhile循环 + +#### 完整格式 + +```java +初始化语句; +do { +循环体语句; +条件控制语句; +}while(条件判断语句); +``` + +#### 执行流程: + + ① 执行初始化语句 + + ② 执行循环体语句 + + ③ 执行条件控制语句 + + ④ 执行条件判断语句,看其结果是true还是false + +如果是false,循环结束 如果是true,继续执行 + + ⑤ 回到②继续 + +### 三种循环的区别 + +##### 三种循环的区别 + + 1.for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行) + +2. do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后 判断) + + ##### for循环和while的区别 + + 1. 条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不能 再次被访问到了 + + 2. 条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束 后,该变量还可以继续使用 + + ##### 死循环(无限循环)的三种格式 + + 1. for(;;){} + 2. while(true){} + 3. do {} while(true); + +### 作业 + +求555555的约数中最大的三位数 + +```java +public class pp { + public static void main(String[] args) { +// 求555555的约数中最大的三位数 + + + int i=555555; + int j; + for(j=999;j>=100;j--) + if(i%j==0) + { + System.out.println("最大的三位数是:"+j); + break; + } + } + } + +``` + +猜数字游戏,由系统随机生成一个随机数(数字(0~99)之间,生成方法为int num=new Random().nextInt(100))。用户去猜测,如果太大,系统提示“你猜的数字太大了!再猜哦”,如果太小,系统提示“你猜的数字太小了!再猜哦”,猜中则提示“恭喜你,猜对了!" + +猜字过程中需要统计用户猜测次数,如果用户一次性猜对,提示”你太厉害了,一次猜对!“,6次以上才猜中的话,提示”笨笨,你猜这么多次!“ + +```java +import java.util.Scanner; + +public class op { + public static void main(String[] args) { +// 猜数字游戏,由系统随机生成一个随机数(数字(0~99)之间, +// 生成方法为int num=new Random().nextInt(100))。 +// 用户去猜测,如果太大,系统提示“你猜的数字太大了!再猜哦”, +// 如果太小,系统提示“你猜的数字太小了!再猜哦”, +// 猜中则提示“恭喜你,猜对了!" +// 猜字过程中需要统计用户猜测次数, +// 如果用户一次性猜对,提示”你太厉害了,一次猜对!“, +// 6次以上才猜中的话,提示”笨笨,你猜这么多次!“ + int x,a,i=0; + Scanner scanner=new Scanner(System.in); + x=(int)(Math.random()*100); + System.out.println("请输入你要猜的值"); + do { + a=scanner.nextInt(); + i=i+1; + if(i==1 && x==a){ + System.out.println("你真腻害!好棒棒!扭扭扭!"); + break; + }else if(i>=6 && x==a){ + System.out.println("你笨笨跟职业选手一样"); + break; + }else if(a==x){ + System.out.println("恭喜你猜对了"); + break; + }else if(a max){ + max = arr[i]; + } + } + // 4. 循环结束后, 打印最大值. + System.out.println("max:" + max); + } +} +``` + +## 数组基本查找【应用】 + +需求: + + 已知一个数组 arr = {19, 28, 37, 46, 50}; 键盘录入一个数据,查找该数据在数组中的索引,并在控 + + 制台输出找到的索引值。 + +思路: + + 1.定义一个数组,用静态初始化完成数组元素的初始化 + + 2.键盘录入要查找的数据,用一个变量接收 + + 3.定义一个索引变量,初始值为-1 + + 4.遍历数组,获取到数组中的每一个元素 + + 5.拿键盘录入的数据和数组中的每一个元素进行比较,如果值相同,就把该值对应的索引赋值给 + +索引变量,并结束循环 + + 6.输出索引变量 + +``` java + // 1.定义一个数组,用静态初始化完成数组元素的初始化 + int[] arr = {19, 28, 37, 46, 50}; + // 2.键盘录入要查找的数据,用一个变量接收 + Scanner sc = new Scanner(System.in); + System.out.println("请输入您要查找的元素:"); + int num = sc.nextInt(); + // 3.定义一个索引变量,初始值为-1。假设要查找的数据, 在数组中就是不存在的 + int index = -1; + // 4.遍历数组,获取到数组中的每一个元素 + for (int i = 0; i < arr.length; i++) { + // 5.拿键盘录入的数据和数组中的每一个元素进行比较,如果值相同,就把该值 +//对应的索引赋值给索引变量,并结束循环 + if(num == arr[i]){ + // 如果值相同,就把该值对应的索引赋值给索引变量,并结束循环 + index = i; + break; + } + } + // 6.输出索引变量 + System.out.println(index); + } +} +``` + +## 作业 + +需求:在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。 + + 选手的最后得分为:去掉一个最高分和一个最低分后 的4个评委平均值 (不考虑小数部分)。 + + 1.定义一个数组,用动态初始化完成数组元素的初始化,长度为6 + + 2.键盘录入评委分数 + + 3.由于是6个评委打分,所以,接收评委分数的操作,用循环 + + 4.求出数组最大值 + + 5.求出数组最小值 + + 6.求出数组总和 + + 7.按照计算规则进行计算得到平均分 + + 8.输出平均分 + +``` java +import java.util.Scanner; + +//在编程竞赛中,有6个评委为参赛的选手打分,分数0-100的整数分。选手的最后得分为: + // 去掉一个最高分和一个最低分后的4个评委平均值(不考虑小数部分)。 +public class D3 { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + double[] arr=new double[6]; + for (int i= 0;i b ? a : b; + int max = d > c ? d : c; + System.out.println("max:" + max); + } +} +``` + +```java +import java.util.Scanner; + +public class D4 { + public static void main(String[] args) { +// 若任意两数和是3的倍数或其中一个为3,则输出true, +// 否者输出false 【断路或】 + Scanner sc=new Scanner(System.in); + System.out.println("请输入第一个数字"); + int a=sc.nextInt(); + System.out.println("请输入第二个数字"); + int b=sc.nextInt(); + System.out.println("结果="+(a+b)); + System.out.println((a+b)%3==0||a%3==0||b%3==0); + } +} +``` + +```java +public class D5 { + public static void main(String[] args) { + // 身高是具有遗传性的,子女的身高和父母的身高有一定的关系。 + // 假定,父母和子女的身高遗传关系如下: +// 儿子身高(厘米)=(父亲身高+母亲身高) ×1.08÷2 +// 女儿身高(厘米)=(父亲身高×0.923+母亲身高) ÷2 +// 现有父亲身高177CM,母亲身高165CM。求子女身高分别预计为多少? +// 【使用变量的定义和算术运算符完成本题】 + int a=177; + int b=165; + System.out.println("儿子身高:"+(a+b)*1.08/2+"cm"); + System.out.println("女儿身高:"+(a*0.923+b)/2+"cm"); + } + +} +``` + +```java +public class D6 { + public static void main(String[] args) { +// 红茶妹妹有21元钱,她攒了几天钱之后自己的钱比原来的两倍还多三块。 +// 绿茶妹妹有24元钱,她攒了几天钱之后自己的钱正好是原来的两倍。 +// 那么红茶和绿茶现在的钱一样多,请问对么? +// 【使用赋值运算符和算术运算符计算各自的钱,使用比较运算符对比大小】 + int a=21; + int b=24; + if(a*2+3==b*2){ + System.out.println("对"); + }else{ + System.out.println("错"); + } + } +} +``` + +```java +public class D7 { + public static void main(String[] args) { +// 小明想在食堂打包一份午饭,商家的优惠方式如下: +// 鱼香肉丝单点24元,油炸花生米单点8元,米饭单点3元。 +// 订单满30元8折优惠。鱼香肉丝优惠价16元,但是优惠价和折扣不能同时使用。 +// 那么这个小伙要点这三样东西,最少要花多少钱? +// 【使用算术运算符、赋值运算符和三元运算符联合完成本题】 + double d,e,f; + d=(24+8+3)*0.8; + e=16+8+3; + f=d>e?e:d; + System.out.println("最后要花"+f+"元"); + } +} +``` + +```java +import java.util.Scanner; + +public class D8 { + public static void main(String[] args) { + int a,b; + Scanner scanner=new Scanner(System.in); + System.out.println("请输入国足得分"); + a=scanner.nextInt(); + System.out.println("请输入日本得分"); + b=scanner.nextInt(); + System.out.println("中日比分:"+a+":"+b); + if(a-b>=0){ + System.out.println("奖励0.5元"); + }else{ + System.out.println("枪毙"); + } + } +} +``` + +### 笔记 + +### 1. 自增自减运算符 + +​ ++和-- 既可以放在变量的后边,也可以放在变量的前边。 + +​ 单独使用的时候, ++和-- 无论是放在变量的前边还是后边,结果是一样的。 + +​ 参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做++或者--。 + +​ 参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作。 + +### 2. 赋值运算符 + +赋值运算符的作用是将一个表达式的值赋给左边,左边必须是可修改的,不能是常量。 + +扩展的赋值运算符隐含了强制类型转换。 + +### 3. 关系运算符 + +关系运算符有6种关系,分别为小于、小于等于、大于、等于、大于等于、不等于。 + +注意事项: + +​ 关系运算符的结果都是boolean类型,要么是true,要么是false。 + +​ 千万不要把“==”误写成“=”,"=="是判断是否相等的关系,"="是赋值。 + +### 4.逻辑运算符 + +逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是 true 或 false。 + +### 5. 短路逻辑运算符 + +在逻辑与运算中,只要有一个表达式的值为false,那么结果就可以判定为false了,没有必要将所有表达式的值都计算出来,短路与操作就有这样的效果,可以提高效率。同理在逻辑或运算中,一旦发现值为true,右边的表达式将不再参与运算。 + +- 逻辑与&,无论左边真假,右边都要执行。 + +- 短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行。 + +- 逻辑或|,无论左边真假,右边都要执行。 + +- 短路或||,如果左边为假,右边执行;如果左边为真,右边不执行。 + +### 6. 三元运算符 + +三元运算符语法格式: + +~~~java +关系表达式 ? 表达式1 : 表达式2; +~~~ + +解释:问号前面的位置是判断的条件,判断结果为boolean型,为true时调用表达式1,为false时调用表达式2。其逻辑为:如果条件表达式成立或者满足则执行表达式1,否则执行第二个。 + diff --git "a/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/2022122 java\345\210\206\346\224\257\347\273\223\346\236\204.md" "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/2022122 java\345\210\206\346\224\257\347\273\223\346\236\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..c8d9682b0083bb605cbe6d3893c363fe7f65ea20 --- /dev/null +++ "b/01 \351\231\210\346\242\246\346\242\246/01 \351\231\210\346\242\246\346\242\246/2022122 java\345\210\206\346\224\257\347\273\223\346\236\204.md" @@ -0,0 +1,146 @@ +### 1.字符串比较 + +equals的运用 + +字符串不能比大小,判断是否相等要用equals + +比如要判断a是否等于b + +a. equals(b) + +### 2.char字符 + +有关扫描器中,字符的输入char a=sc.next().charAt(0); + +从字符串中,截取第一个字符,因为计算机常第一位是计0 + +### 3.if嵌套 + +嵌套if语句可以在条件内,针对真或假的情况,再指定条件进行判断,从而拥有更多分支的功能。 + +### 4.switch + +swith支持字符串的判断,但是不支持布尔型变量(if要有equals才可以) + +switch转换 + +switch(”判断条件“ weekday){ + +​ case 1: + +sout(“1”) + +break; + +​ case 2: + +sout(“2”) + +break; + +....... + +default(默认表示前面几个可能性不能满足就执行这个默认的,兜底的) + +​ sout(“”) + +} + +swihch有穿透所以要break结尾 + +default是保底用的 + +### 作业 + +```java +public class D86 { + public static void main(String[] args) { + // 某事不同车牌的出租车3千米的起步价和计费分别为:夏利3元,3千米以外,2.1元每千米; +// 富康4元,3千米以外,2.4元每千米;桑塔纳5元,3千米以外,2.7元每千米。 +// 编程实现从键盘输入乘车的车型及行车千米数,输出应付车费。 + String name; + int km; + Scanner sc = new Scanner(System.in); + System.out.println("请输入你要选择的车辆名称"); + name = sc.nextLine(); + System.out.println("请输入你要行驶的公里数"); + km = sc.nextInt(); + switch (name) { + case "夏利": + if (km>3) { + System.out.println("车费为"+(3+(km-3)*2.1)+"元"); + } else { + System.out.println("车费为3元"); + } + break; + case "富康": + if (km>3) { + System.out.println("车费为"+(4+(km-3)*2.4)+"元"); + + } else { + System.out.println("车费为4元"); + }break; + case "桑坦纳": + if (km>3) { + System.out.println("车费为"+(5+(km-3)*2.7)+"元"); + } else { + System.out.println("车费为5元"); + }break; + default: + System.out.println("输入错误"); + break; + } + } +} +``` + +```java +import java.util.Scanner; + +public class practice { + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + System.out.print("请输入年份:"); + int year = sc.nextInt(); + System.out.print("请输入月份:"); + int month = sc.nextInt(); + System.out.print("请输入日:"); + int day = sc.nextInt(); + int count = 0; + int days = 0; + if (year > 0 && month > 0 && month < 13 && day > 0 && day < 32) { + for (int i = 1; i < month; i++) { + switch (i) { + case 1: + case 3: + case 5: + case 7: + case 8: + case 10: + case 12: + days = 31; + break; + case 4: + case 6: + case 9: + case 11: + days = 30; + break; + case 2: { + if ((year % 4 == 0 && year % 1 != 0) || (year % 400 == 0)) { + days = 29; + } else { + days = 28; + } + break; + } + } + count = count + days; + } + count = count + day; + System.out.println(year + "年" + month + "月" + day + "日是" + year + "年的第" + count + "天"); + } else + System.out.println("数据输入错误!"); + } +} +``` diff --git "a/20221208 \346\225\260\347\273\204.md" "b/20221208 \346\225\260\347\273\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..df3a875a98875c4b31b1a70d57fcdc3841b565c3 --- /dev/null +++ "b/20221208 \346\225\260\347\273\204.md" @@ -0,0 +1,96 @@ +## 数组 + +#### 1.数组概述 + +一次性声明大量的用于存储数据类型的变量 + +要存储的数据通常都是同类型数据,例如:考试成绩 + +int[] scores = {100,100,100,100,100,100,100…}; + +#### 2.数组是什么 + +数组(array):是一种用于存储多个相同数据类型的存储模型(可以理解为容器) + +#### 3.数组定义格式 + +##### 格式1: + +数据类型[ ] 变量名: + +​ 范例 int[ ] arr ; 跟 int arr相比; + +​ int[ ] arr 定义一个int 类型的数组,数组名是arr + +​ int arr 定义了一个变量 变量名是arr + +##### 格式2: + +数据类型 变量名[ ]: + +​ int arr [ ]; + +​ 定义了一个int类型的变量, 变量名是arr数组 + +推荐使用:格式1 int [ ] arr; + +#### 3.数组初始化概述 + + Java 数组必须先初始化 才能使用 + +所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值注意: + +数组中的每一个数据,我们称之为数组中的元素 + +##### 3.1静态初始化 + +静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度格式: + +数据类型[] 变量名 = new 数据类型[]{数据1,数据2,数据3,…}; + +范例:int[] arr = new int[]{1,2,3}; + + 简化格式: 数据类型[ ] 变量名 = {数据1,数据2,} + +#### 4.遍历 + +数组遍历是什么 + +获取数组中的每一个元素,我们可以把获取到的元素输出在控制台 + +获取数组长度(元素个数) + +格式: 数组名.length + +​ arr .length + +数组遍历指的是把数组中的元素取出来,取出来之后可以(打印,求和,判断…) + + + +### 作业 + +定义一个可以存储5个元素的int数组,数据来自于键盘录入,最后遍历数组,把元素输出在控制台 + +```java + +import java.util.Scanner; + +public class D1 { + public static void main(String[] args) { + //一:初始化数组 + int[] ary = new int[5];//定义数组,并初始化,默认值就是0 + for(int i=0;i<5;i++){ + Scanner num=new Scanner(System.in); + System.out.println("输入元素"+i); + n[i]=num.nextInt(); + } + System.out.println("你输入的五个元素为:"); + for (int j=0;j<5;j++){ + System.out.print(n[j]+" "); + } + + } +} +``` + diff --git "a/20221216\345\276\252\347\216\257\347\273\203\344\271\240.md" "b/20221216\345\276\252\347\216\257\347\273\203\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..8608e52594cf272f36adf061cbb4b8c6bc42c8e4 --- /dev/null +++ "b/20221216\345\276\252\347\216\257\347\273\203\344\271\240.md" @@ -0,0 +1,34 @@ +倒序输出乘法口诀 9-1 + +~~~java +public class I1 { + public static void main(String[] args) { + int i,j; + for(i=0;i<=100;i++){ + for(j=0;j<=100;j++){ + if (i*5.06+j*4.05==445.40){ + System.out.println(i+" "+j); + } + } + } + } +} +~~~ + +天然气立方数的计算 + +~~~java +public class I1 { + public static void main(String[] args) { + int i,j; + for(i=0;i<=100;i++){ + for(j=0;j<=100;j++){ + if (i*5.06+j*4.05==445.40){ + System.out.println(i+" "+j); + } + } + } + } +} +~~~ +