黑马程序员技术交流社区

标题: 这个 题 怎么实现啊 !!老是 数据转换的问题 [打印本页]

作者: 张可可    时间: 2016-6-3 00:06
标题: 这个 题 怎么实现啊 !!老是 数据转换的问题
2.分析以下需求,并用代码实现:       
        (1)定义一个TreeSet集合,然后存入6个Double类型的数据,分别是[1.1,5.2,6.3,2.5,5.2,3.3]
        (2)不去重,然后遍历输出(从大到小)
作者: XXXRUI    时间: 2016-6-3 00:16
同求,求大神的解答!!
作者: 红豆蓝    时间: 2016-6-3 10:21
package two.four.thread;

import java.util.Comparator;
import java.util.TreeSet;

//定义一个TreeSet集合,然后存入6个Double类型的数据,分别是[1.1,5.2,6.3,2.5,5.2,3.3]
//        (2)不去重,然后遍历输出(从大到小)
public class Test_String {
public static void main(String[] args) {
        TreeSet<Double> tree = new TreeSet<>(new Comparator<Double>() {

                @Override
                public int compare(Double o1, Double o2) {
                                int num = o1.compareTo(o2);                        //不知道你怎么做的,可以贴上来看一下,
                                                                                                        //用到Double中的这个方法就可以了
                        return num==0?1:num;
                }
               
        });
       
        tree.add(1.1);
        tree.add(5.2);
        tree.add(6.3);
        tree.add(2.5);
        tree.add(5.2);
        tree.add(3.3);
       
        System.out.println(tree);
}

}
遍历输出就不写了
作者: dubei1993    时间: 2016-6-3 10:45
很难吗?
package cn.itcast_01;

import java.util.Comparator;
import java.util.TreeSet;

/*
*  (1)定义一个TreeSet集合,然后存入6个Double类型的数据,分别是[1.1,5.2,6.3,2.5,5.2,3.3]
     (2)不去重,然后遍历输出(从大到小)
*/
public class TreeSetDemo {
public static void main(String[] args) {
        TreeSet<Double> ts=new TreeSet<Double>(new Comparator<Double>() {

                @Override
                public int compare(Double d1, Double d2) {
                        // TODO Auto-generated method stub
                        if(d2-d1>=0){
                                return 1;
                        }
                        if(d2-d1<0){
                                return -1;
                        }
                        return 0;
                }
        });
        ts.add(1.1d);
        ts.add(5.2d);
        ts.add(6.3d);
        ts.add(2.5d);
        ts.add(5.2d);
        ts.add(3.3d);
for(Double d:ts){
        System.out.println(d);
}
}
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2