这个系列是对javaSE课程代码的回顾,所有Demo都是亲自动手实现的,并做了小小的change,为了方便自己理解和后期复习,代码里加了大量的注释。现对所有知识点的代码进行复习整理,进一步理解、完善代码,对注释进行补充。其中重要的知识点会单独说明,但主要以代码为主。
说明:博客是对学习内容的巩固,很多注释是为了自己理解,所以不会很专业。
------------------------------------------------------ArrayDemo01--------------------------------------------------
package cn.tjpu.javase02.Array; /** * 该类实现输入数据求总分,平均分 * @author Administrator——>写入文档 */ import java.util.Scanner; public class ArrayDemo01 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 定义一个数组用来存放输入的数据 float[] ScoreArr = new float[5]; // 用循环接收5个输入 for (int i = 0; i < 5; i++) { System.out.println("输入成绩:"); String line = sc.nextLine(); // 将字符串转换成float(从终端输入的都为字符串) ScoreArr[i] = Float.parseFloat(line); } // 遍历数组累加里面的值 float sum = 0; for (int i = 0; i < 5; i++) { sum += ScoreArr[i]; } System.out.println("总成绩:" + sum); System.out.println("平均成绩:" + sum / 5); }
---------------------------------------------------ArrayDemo02----------------------------------------------------
package cn.tjpu.javase02.Array; /** * 该类实现遍历数组,倒序打印 */ public class ArrayDemo02 { public static void main(String[] args) { // 定义一个数组,遍历赋值(批量自动装数据) int[] a = new int[21]; for (int i = 0; i < a.length; i++) { a[i] = i; } // 倒序打印 for (int i = a.length - 1; i >= 0; i--) { System.out.println(a[i]); } // 正序输出(while) int i = 0; while (i < a.length) { System.out.println(a[i]); i++; } // 倒序输出(while) int i1 = a.length - 1; while (i1 > -1) { System.out.println(a[i1]); i1--; } }
--------------------------------------------------ArrayDemo03--------------------------------------------------
package cn.tjpu.javase02.Array; /** * 求最大最小值 */ public class ArrayDemo03 { public static void main(String[] args) { // 定义一个数组,并往里面添加数据 int[] arr = new int[5]; arr[0] = 23; arr[1] = 6; arr[2] = 9; arr[3] = 89; arr[4] = 3; // 打印最大值 int temp = arr[0];// 定义临时变量 // 遍历数组取出最大值赋给max for (int i = 0; i < arr.length; i++) { if (arr[i] > temp) { temp = arr[i]; } } System.out.println("最大值是:" + temp); // 打印最小值 temp = arr[0];// 重新给临时变量赋值 for (int i = 0; i < arr.length; i++) { if (arr[i] < temp) { temp = arr[i]; } } System.out.println("最小值是:" + temp); }
--------------------------------------------------ArrayDemo04--------------------------------------------------
package cn.tjpu.javase02.Array; /** * 冒泡排序的实现(固定模板) */ public class ArrayDemo04 { public static void main(String[] args) { int[] a = new int[5]; a[0] = 2; a[1] = 4; a[2] = 7; a[3] = 3; a[4] = 0; // 冒泡排序(固定模板) for (int j = 0; j < a.length - 1; j++) { for (int i = 0; i < a.length - 1 - j; i++) { if (a[i] > a[i + 1]) { int temp = a[i]; a[i] = a[i + 1]; a[i + 1] = temp; } } } // 打印结果 for (int i = 0; i < a.length; i++) { System.out.println(a[i]); } }
-------------------------------------------------学生信息管理---------------------------------------------------------
package cn.tjpu.javase02.Student; /** * 定义一个学生信息类 */ public class StudentInfo { // 名字、学号、年龄、成绩 String name; String Number; int age; float score;
package cn.tjpu.javase02.Student; /** * 学生成绩信息管理 */ import java.util.Scanner; public class StudentMange { public static void main(String[] args) { /* * 类只是一个模板,没有具体的数据,只是定义了一些属性和方法(逻辑) 所以要建一个类的对象,这个对象才是有意义的,有具体的数据(可以用该类型的变量来引用) * 从终端输入每个学生信息:姓名,学号,年龄,成绩。 */ Scanner sc = new Scanner(System.in); // 从终端接收第一个学生的信息 System.out.println("请输入第1个学生信息:"); StudentInfo stu1 = new StudentInfo(); stu1.name = sc.nextLine(); stu1.Number = sc.nextLine(); stu1.age = Integer.parseInt(sc.nextLine());// 字符串->int stu1.score = Float.parseFloat(sc.nextLine());// 字符串->float // 从终端接收第二个学生的信息 System.out.println("请输入第2个学生信息:"); StudentInfo stu2 = new StudentInfo(); stu2.name = sc.nextLine(); stu2.Number = sc.nextLine(); stu2.age = Integer.parseInt(sc.nextLine()); stu2.score = Float.parseFloat(sc.nextLine()); // 从终端接收第三个学生的信息 System.out.println("请输入第3个学生信息:"); StudentInfo stu3 = new StudentInfo(); stu3.name = sc.nextLine(); stu3.Number = sc.nextLine(); stu3.age = Integer.parseInt(sc.nextLine()); stu3.score = Float.parseFloat(sc.nextLine()); // 创建一个学生信息类数组,放入三个学生的信息(学生信息类和基本类型一样,只不过是自己定义的) StudentInfo[] students = new StudentInfo[3]; students[0] = stu1; students[1] = stu2; students[2] = stu3; // 根据分数倒序排序(冒泡排序) for (int j = 0; j < students.length - 1; j++) { for (int i = 0; i < students.length - 1 - j; i++) { if (students[i].score < students[i + 1].score) { StudentInfo temp = students[i]; students[i] = students[i + 1]; students[i + 1] = temp; } } } // 将排序后的结果打印出来 for (int i = 0; i < students.length; i++) { System.out.println(students[i].name + ":" + students[i].Number + "," + students[i].age + "," + students[i].score); } }