JAVA编程问题使用TreeSet类,实现按照英语成绩高低存放2个student对象。

java中怎么将一个TreeSet中保存的对象放到一个Jtable中?~

可以依次取出,保存到二维数据,再用二维数组赋值给Jtable

排序的时候,对比不同的属性
~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

import java.util.Iterator;
import java.util.TreeSet;
public class Test {
    public static void main(String[] args) {
        TreeSet<Student> students = new TreeSet<>();
        students.add(new Student("zhang san", 90));
        students.add(new Student("li si", 75));
        students.add(new Student("wang wu", 95));
        students.add(new Student("zhao liu", 90));
        Iterator<Student> iterator = students.iterator();
        while (iterator.hasNext()) {
            Student student = iterator.next();
            System.out.println(student.getName() + " " + student.getEnglish());
        }
    }
}
class Student implements Comparable<Student> {
    private String name;
    private int english;
    public Student() {
    }
    public Student(String name, int english) {
        this.name = name;
        this.english = english;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getEnglish() {
        return english;
    }
    public void setEnglish(int english) {
        this.english = english;
    }
    public int compareTo(Student o) {
        if (this.english != o.english) {
            return o.english - this.english;
        } else {
            return this.name.compareTo(o.name);
        }
    }
}

compareTo的实现方法是,先按照成绩由高到低排列,如果成绩一样那么就按照姓名排列。



package com.isoftstone.baidu;
import java.util.Iterator;
import java.util.TreeSet;
public class TreeSetDemo {
    public static void main(String [] args) {
        Student student1 = new Student();
        student1.setName("张三");
        student1.setEnglish(79f);
        Student student2 = new Student();
        student2.setName("李四");
        student2.setEnglish(95f);
        Student student3 = new Student();
        student3.setName("王五");
        student3.setEnglish(85f);
        Student student4 = new Student();
        student4.setName("赵六");
        student4.setEnglish(68f);
                              
        TreeSet<Student> set = new TreeSet<Student>();
        set.add(student1);
        set.add(student2);
        set.add(student3);
        set.add(student4);
                              
        Iterator<Student> it = set.iterator();
        while(it.hasNext()) {
            Student temp = it.next();
            System.out.println("姓名:" + temp.getName());
            System.out.println("英语成绩:" + temp.getEnglish());
        }
                              
    }
}
class Student implements Comparable<Student> {
    private String name; // 姓名
    private float english;// 英文成绩
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public float getEnglish() {
        return english;
    }
    public void setEnglish(float english) {
        this.english = english;
    }
    public int compareTo(Student anotherStudent) {
        int thisVal = (int) this.getEnglish();
        int anotherVal = (int) anotherStudent.getEnglish();;
        return (thisVal < anotherVal ? -1 : (thisVal == anotherVal ? 0 : 1));
    }
}

测试结果:

姓名:赵六
英语成绩:68.0
姓名:张三
英语成绩:79.0
姓名:王五
英语成绩:85.0
姓名:李四
英语成绩:95.0


JAVA编程问题使用TreeSet类,实现按照英语成绩高低存放2个student对象...
答:import java.util.Iterator;import java.util.TreeSet;public class Test { public static void main(String[] args) { TreeSet<Student> students = new TreeSet<>(); students.add(new Student("zhang san"...

java界面编程实现展开树
答:使用JTree 给你个例子import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.*;public class TreeDemo1{ public TreeDemo1(){ JFrame f=new JFrame("TreeDemo1");Container contentPane...

java中如何对jtree编程
答:DefaultMutableTreeNode child10 = new DefaultMutableTreeNode("修改用户密码");DefaultMutableTreeNode child11 = new DefaultMutableTreeNode("删除用户信息");DefaultMutableTreeNode child12 = new DefaultMutableTreeNode("...

Java中有关JTree的问题,求大侠帮忙。。。
答:1:你可以为它添加一个空的子节点 2:你可以实现一下这个类重写它显示图标的方法 public class FriendsIco extends DefaultTreeCellRenderer { Override public Component getTreeCellRendererComponent (JTree tree,Object value...

Java二叉树构造问题 要求:从控制台输入一行扩展二叉树的字符串,然后根...
答:if(tree.getParentId()==0){ tree.showChildTree(trees);} } } } 树类:package tree;import java.util.List;public class Tree { private int parentId;private int id;private String showStr;private String Spaces...

java 递归数据库生成 树形结构问题
答:public void loadTree() throws Exception{ System.out.println(JsonUtils.javaToJson(recursiveTree(1)));} / 递归算法解析成树形结构 param cid return author jiqinlin / public TreeNode recursiveTree(int cid) { //...

Java怎么实现输出是一个tree结构
答:} public void setLink(String link) { this.link = link; } }输出树形菜单类:package cn.com.tree; import java.util.ArrayList; import java.util.List; public class Tree { private StringB...

java实现二叉树的问题
答:/ public class BitTree { public static Node2 root;public static String asString;//事先存入的数组,符号#表示二叉树结束。public static final char[] treeLine = {'a','b','c','d','e','f','g',' ',...

java问题,关于JTree子节点显示图片问题(高分!)
答:import java.awt.*;import java.awt.event.*;public class 使用DefaultTreeCellRenderer extends JApplet { static private Icon openFolder = new ImageIcon("button_lit.jpg"),closedFolder = new ImageIcon("button.jpg"...

java编程中,Treeset和泛型问题请教?
答:treeSet肯定有一个带一个参数的构造函数,这个构造函数往往用来传定一个对象。treeSet对象在组织的时候,就会利用这个对象去实现其他要实现的功能。有点像Spring的注入。注入进去一个类,能直接使用其方法,然后实现某些功能。

IT评价网,数码产品家用电器电子设备等点评来自于网友使用感受交流,不对其内容作任何保证

联系反馈
Copyright© IT评价网