练习2

来源:互联网 发布:图解网络硬件 百度云 编辑:程序博客网 时间:2024/06/06 19:45
package 练习2;public class Student implements Comparable<Student>{String name;double grade;public Student(String name,double grade) {// TODO Auto-generated constructor stubthis.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;}@Overridepublic int compareTo(Student o) {// TODO Auto-generated method stubif(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() {@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubString 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() {@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubIterator<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 stubWindowBoxLayout w = new WindowBoxLayout();w.setBounds(100,100,310,350);w.setTitle("成绩排序");}}


原创粉丝点击