diff --git "a/25 \346\234\261\346\203\240\345\277\240/20221212 \346\225\260\347\273\2042.md" "b/25 \346\234\261\346\203\240\345\277\240/20221212 \346\225\260\347\273\2042.md" new file mode 100644 index 0000000000000000000000000000000000000000..d7c67d247f6550351ec4e389dc839a86fc320bde --- /dev/null +++ "b/25 \346\234\261\346\203\240\345\277\240/20221212 \346\225\260\347\273\2042.md" @@ -0,0 +1,114 @@ +## 数组 + + + +1.数组的常用定义格式 + +```java +int[] arr; +double[] arr; +char[] arr; +``` + +2.数组的动态初始化 + +格式 + +```java +数据类型[] 数组名 = new 数据类型[数组长度] +int[] arr = new int[3]; +``` + +3.动态初始化格式详解 + +等号左边: + +int:数组的数据类型 + +[]:代表这是一个数组 + +arr:代表数组的名称 + +等号右边: + +new:为数组开辟内存空间 + +int:数组的数据类型 + +[]:代表这是一个数组 + +5:代表数组的长度 + +4.数组元素访问 + +访问数组元素格式 + +```java +数组名[索引]; +``` + +什么是索引 + +每一个存储到数组的元素,都会自动的拥有一个编号,从0开始。 + +这个自动编号称为数组索引(index),可以通过数组的索引访问到数组中的元素。 + +5.数组的静态初始化 + +什么是静态初始化 + +在创建数组时,直接将元素确定 + +静态初始化格式 + +```java +数据类型[] 数组名 = {元素1,元素2,...}; +``` + +6.数组遍历 + +数组遍历:就是将数组中的每个元素分别获取出来,就是遍历。遍历也是数组操作中的基石。 + +## 作业 + +```java +import java.util.Arrays; +import java.util.Random; + +public class a { + public static void main(String[] args) { + //闽大举行选美比赛,男生参赛,10个女生当评委,定义一个数组, + // 存放评分,用随机数模拟打分的过程,用程序算出选手的最后得分 + // 【去掉一个最高分,再去掉一个最低分,用剩下的分数求平均值】, + int[] arr = new int[10]; + int sum = 0; + Random r = new Random(); + for (int i = 0; i < arr.length; i++) { + arr[i] = r.nextInt(100) + 1; + sum += arr[i]; + } + System.out.println(Arrays.toString(arr)); + int max = arr[0]; + int min = arr[0]; + for (int i = 1; i < arr.length; i++) { + if (max < arr[i]) { + max = arr[i]; + } + if (min > arr[i]) { + min = arr[i]; + } + } + System.out.println("总分:"+ sum); + System.out.println("最大值:"+ max); + System.out.println("最小值:"+ min); + double a = (sum-max-min)*1.0/(arr.length-2); + System.out.println("平均值为:"+ a); + } +} +``` + +``` +int[] arr; +double[] arr; +char[] arr; +``` \ No newline at end of file diff --git "a/25 \346\234\261\346\203\240\345\277\240/20221213 \345\244\215\344\271\240.md" "b/25 \346\234\261\346\203\240\345\277\240/20221213 \345\244\215\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..e8e5728f5c9a5e144fd0a2365561f8f8d4be6c67 --- /dev/null +++ "b/25 \346\234\261\346\203\240\345\277\240/20221213 \345\244\215\344\271\240.md" @@ -0,0 +1,79 @@ +1.\n表示换行,\t制表符,相当于大空格table,也会是缩进对齐 + +2整数类型 + + 1.基本数据类型(CPU可以直接拿来运算的一些数据) + + 整数型: 整数 、小数、字符、 + + 非数值型:boolean true false + + 2、引用数据类型 + + String 数组 + + 计算不能直接把这些数据拿来运算,因为引用数据类型的变量,存放的其实就是数据类型的地址, + + 而不是实际上的数据,要访问具体的数据就需要用到引用类型自己的一些方法 + +3.字符串的比较为什么要用equals + +例: + +```java +String psw = "abc"; +String userpsd = new String("abc"); +if(psd.equals(userpsd)){ + sout() +} +``` + +equals的使用就是先找到内存地址所在的位置,再取出里面的数据进行比较 + +4. String虽然是引用数据类型,但是“ ”直接赋值出来的字符中很特殊 + + 可以直接当基本数据类型使用,比如输出和比较。 + + 但它本身不是数值型,不能做算术运算 + + 5.字符串 + + 输出的时候是字符,但是比较的时候是内存地址 + + ## 作业 + + ```java + public class D5 { + //用倒序输出乘法口诀,9到1 + public static void main(String[] args) { + //表示行 + for (int i=9; i>=1; i--){ + //表示列 + for (int j=1; j<=i; j++){ + System.out.print(j+"*"+i+"="+j*i+"\t"); + } + System.out.println(); + } + } + } + + + + + public class D3 { + //计算燃气 + public static void main(String[] args) { + //购买100立方 总共付了445.4元 + //第二档4.05元/立方,第三档5.06元/立方 + //求购买的第二档和第三档分别为多少? + for (int i =1;i<100;i++){ + if (i*4.05+(100-i)*5.06 ==445.4){ + System.out.println("第二档"+i+"立方,"+"第三档"+(100-i)+"立方"); + } + } + } + } + + ``` + + \ No newline at end of file