题目如下:

设计一个Student类,该类中包括学生的姓名和成绩。创建Student类的5个对象,如下所示:

姓名 成绩
刘德华 90
张学友 80
刘杰 65
章子怡 100
周迅 60

将以上5个对象放入LinkedList中,完成如下操作和统计:

  • 输出LinkedList中的对象个数。
  • 删除姓名为“刘杰”的学生信息,并输出LinkedList中现有学生信息。
  • 将姓名为“刘德华”的学生成绩改为95。
  • 输出成绩不及格的学生姓名。

题解:

Student类:

public class Student {
	private String name; 
	private int score;
	
    //构造方法
	public Student(String name,int score) {
		this.name=name;
		this.score=score;
	}

	//显示类内元素,输出没有会造成输出乱码
	public String toString() {
		return "学生姓名:"+name+", 学生成绩:"+score;
	}

//get&&set
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getScore() {
		return score;
	}

	public void setScore(int score) {
		this.score = score;
	}
	
	

}

主函数

public class Text {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		LinkedList<Student> ll=new LinkedList<Student>();
		
		Student s1=new Student("刘德华",90);
		Student s2=new Student("张学友",80);
		Student s3=new Student("刘杰",65);
		Student s4=new Student("章子怡",100);
		Student s5=new Student("周迅",60);
		ll.add(s1);
		ll.add(s2);
		ll.add(s3);
		ll.add(s4);
		ll.add(s5);
		System.out.println("一共有:"+ll.size()+"个学生。");//size进行统计输出
		
		System.out.println("正在删除刘杰的信息......");
		ll.remove(s3);
        
		//遍历输出
		for(Student s:ll)
		{
			System.out.println(s);
		}
		
		System.out.println("开始修改刘德华成绩......");
		ll.set(0, new Student("刘德华",95));//set进行更换,前面为次序后面为更换内容(new空间)
		for(Student s:ll)
		{
			System.out.println(s);
		}
		
		System.out.println("正在输出不及格学生成绩:");
		boolean f=false;
		for(int i=0;i<ll.size();i++)
		{
			if (ll.get(i).getScore() < 60) {//使用两个get进行提取
				System.out.println(ll.get(i).getName());
				f=true;
			}

		}
		if(!f)System.out.println("检索完毕,没有不及格学生!");

	}

}