我是靠谱客的博主 寂寞咖啡豆,最近开发中收集的这篇文章主要介绍练习2,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

package 练习2;

public class Student implements Comparable<Student>{
	
	String name;
	double grade;
	
	public Student(String name,double grade) {
		// TODO Auto-generated constructor stub
		this.name = name;
		this.grade = grade;
	}
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getGrade() {
		return grade;
	}
	public void setGrade(double grade) {
		this.grade = grade;
	}
	@Override
	public int compareTo(Student o) {
		// TODO Auto-generated method stub
		if(this.grade<o.grade)
		{
			return 0;
		}
		return 1;
	}
	
	

}

package 练习2;

import java.awt.Button;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;

import javax.swing.Box;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class WindowBoxLayout extends JFrame{
	
	Box baseBox,boxV1,boxv2,boxV3,boxV4;
	JTextField text1,text2;
	Button btn2;
	Button btn1;
	ArrayList<Student> list = new ArrayList<Student>();
	public WindowBoxLayout()
	{
		setLayout(new java.awt.FlowLayout());
		init();
		setVisible(true);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	void init(){
		boxV1 = Box.createHorizontalBox();
		boxV1.add(new Label("姓名"));
		boxV1.add(Box.createHorizontalStrut(8));
		text1 = new JTextField(8);
		boxV1.add(text1);
		
		
		boxv2 = Box.createHorizontalBox();
		boxv2.add(new Label("成绩"));
		boxv2.add(Box.createHorizontalStrut(8));
		text2=new JTextField(8);
		boxv2.add(text2);
		
		
		boxV3 = Box.createHorizontalBox();
		btn1 = new Button("添加");
		boxV3.add(btn1);
		boxV3.add(Box.createHorizontalStrut(8));
		btn2 = new Button("排序");
		boxV3.add(btn2);
		
		boxV4 = Box.createHorizontalBox();
		JTextArea text3 = new JTextArea(9,20);
		boxV4.add(text3);
		
		baseBox = Box.createVerticalBox();
		baseBox.add(boxV1);
		baseBox.add(Box.createVerticalStrut(10));
		baseBox.add(boxv2);
		baseBox.add(Box.createVerticalStrut(10));
		baseBox.add(boxV3);
		add(baseBox);
		baseBox.add(Box.createVerticalStrut(10));
		baseBox.add(boxV4);
		
		
		btn1.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				String name = text1.getText();
				double grade = Double.parseDouble(text2.getText());
				//System.out.println(name+"  "+grade);
				Student s = new Student(name, grade);
				//System.out.println(s.name+"  "+s.grade);
				if (list.isEmpty()==true) {
					list.add(0,s);
				}
				else
				{
					int i=0;
					while(i<list.size())
					{
						Student student = list.get(i);
						System.out.println(student.name+"  "+student.grade);
						if(student.compareTo(s)==0)
						{
							
							break;
						}
						i++;
						System.out.println(i);
					}
					list.add(i,s);
					
				}
			}
		});
		
		btn2.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				Iterator<Student> it = list.iterator();
				while(it.hasNext())
				{
					Student student =(Student) it.next();
					
					text3.append(student.name+" "+student.grade+"n");
					//System.out.println(student.name+" "+student.grade+"n");
					
				}
			}
		});
	}
	
}

package 练习2;

import java.util.ArrayList;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		WindowBoxLayout w = new WindowBoxLayout();
		w.setBounds(100,100,310,350);
		w.setTitle("成绩排序");
		
		
	}

}



最后

以上就是寂寞咖啡豆为你收集整理的练习2的全部内容,希望文章能够帮你解决练习2所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部