集合框架类--ArrayList

【实验十六】

***利用集合框架类—ArrayList实现某班Java成绩的管理:

  1. 实现其基本信息的增、删,查,改;***
import java.util.ArrayList;
import java.util.Scanner;
public class Test {

	public static void main(String[] args) {
		ArrayList<Student> a = new ArrayList();
		a.add(new Student("20001201","学生1", 100));
		a.add(new Student("20001202","学生2", 90));
		a.add(new Student("20001203","学生3", 80));
		a.add(new Student("20001204","学生4", 70));
		a.add(new Student("20001205","学生5", 60));
		a.add(new Student("20001206","学生6", 50));
		System.out.println("学生信息");
		System.out.println(a);
		//增
		Scanner b = new Scanner(System.in);
		System.out.println("增加学生");
		System.out.println("请输入学号、姓名、成绩");
		String sno1,name1; double degree1;
		sno1 = b.next();
		name1 = b.next();
		degree1 = b.nextDouble();
		Student student1 = new Student(sno1,name1,degree1);
		boolean b1 = false;
		for(int i=0;i<a.size();i++) {
			Student b2 = a.get(i);
			if(sno1.equals(b2.getsno()))
				b1 = true;
			 break;
		}
		if(b1)
			System.out.println("该生已存在");
		else {
			a.add(student1);
			System.out.println("更新信息");
			System.out.println(a);
		}
		//删
		Scanner c = new Scanner(System.in); 
		System.out.println("删除学生");
		System.out.println("请输入学号");
		String sno2 = c.next();
		boolean c1 = false;int i1;
		for(i1=0;i1<a.size();i1++) {
			Student c2 = a.get(i1);
			if(sno2.equals(c2.getsno())) {
				c1 = true;
				break;
			}
		}
		if(c1) {
			a.remove(i1);
			System.out.println("更新信息");
			System.out.println(a);
	   }
		else {
			System.out.println("查无此人");
		}
		//改
		System.out.println("修改成绩");
		for(int i=0;i<a.size();i++) {
			Student d=a.get(i);
			if(d.getdegree()<60)
				d.setdegree(d.getdegree()*1.5);
		}
		System.out.println(a);

		//查
		System.out.println("查询学生");
		System.out.println("请输入要查询的学生的学号");
		Scanner e=new Scanner(System.in);
		String e1=e.nextLine();
		boolean e2 =false;
		for(int i=0;i<a.size();i++) {
			Student sno3=a.get(i);
			if(e1.equals(sno3.getsno())) {
			e2=true;
			System.out.println("找到了"+a.get(i));
			break;
			}
		}
		if(e2==false)
			System.err.println("查无此人");

	}

}

2.实现按成绩排序。
源程序:

import java.awt.event.MouseWheelEvent;
import java.awt.im.InputContext;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Pl1 {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ArrayList<Student> list=new ArrayList();
		list.add(new Student("2019031501", "学生1", 87));
		list.add(new Student("2019031502", "学生2", 95));
		list.add(new Student("2019031503", "学生3", 55));
		list.add(new Student("2019031504", "学生4", 43));
		list.add(new Student("2019031505", "学生5", 98));
		System.out.println("原始数据");
		System.out.println(list);
		System.out.println("排序后");
		Collections.sort(list,new Pl());
		System.out.println(list);
}

}
import java.util.Comparator;
public class Pl implements Comparator<Student> {
	@Override
	public int compare(Student o1,Student o2) {
		if(o1.getdegree()>o2.getdegree())
			return 1;
		else if(o1.getdegree()<o2.getdegree())
			return -1;
		else {
			return 0;
		}
	}
}

版权声明:本文为m0_46641784原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。