java 怎么把list里面的数据取出来依次比较

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎么把list里面的数据取出来依次比较相关的知识,希望对你有一定的参考价值。

我在list里面存了很多日期类型的数据 怎么把他们取出来依次进行比较 就是第一个跟第二个比第二个跟第三个比第三个跟第四个比依次这样比较下去

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Collections;
import java.util.Date;

public class CompareDateDemo 

    private static ArrayList<Date> list = new ArrayList<Date>();

    // 静态初始化集合
    static 
        // 插入测试数据
        list.add(new Date());
        Calendar c1 = Calendar.getInstance();
        c1.set(2010, 11, 22);
        list.add(c1.getTime());
        c1.set(2011, 11, 22);
        list.add(c1.getTime());
        c1.set(2012, 11, 22);
        list.add(c1.getTime());

        System.out.println(list.size());
    

    public static void main(String[] args) 
        compare1();
        // compare2();
        // compare3();
    

    // 利用冒泡法进行排序
    static void compare1() 

        // 输出排序前结果
        System.out.println("排序前:");
        for (int i = 0; i < list.size(); i++) 
            System.out.println(list.get(i));
        

        // 排序(冒泡算法) 将list进行升序排列
        for (int i = 0; i < list.size(); i++) 
            for (int j = 0; j < i; j++) 
                if (list.get(i).compareTo(list.get(j)) < 0) 
                    Date tempDate = list.get(i);
                    list.set(i, list.get(j));
                    list.set(j, tempDate);
                
            
        

        // 输出排序后结果
        System.out.println("排序后:");
        for (int i = 0; i < list.size(); i++) 
            System.out.println(list.get(i));
        

    

    // 利用Arrays工具类进行排序
    static void compare2() 

        Object[] obj = list.toArray();

        // 输出排序前结果
        System.out.println("排序前:");
        for (int i = 0; i < obj.length; i++) 
            System.out.println(obj[i]);
        

        // 排序
        Arrays.sort(obj);

        // 输出排序后结果
        System.out.println("排序后:");
        for (int i = 0; i < obj.length; i++) 
            System.out.println(obj[i]);
        
    

    // 利用Collections工具类进行排序
    static void compare3() 

        // 输出排序前结果
        System.out.println("排序前:");
        for (int i = 0; i < list.size(); i++) 
            System.out.println(list.get(i));
        

        // 排序
        Collections.sort(list);

        // 输出排序后结果
        System.out.println("排序后:");
        for (int i = 0; i < list.size(); i++) 
            System.out.println(list.get(i));
        
    

参考技术A Date d1;
Date d2;
for(int i = 0; i < list.size; i++)
d1 = list.get(i);

d2 = list.get(i+1);

//比较d1 和 d2 就可以了

参考技术B for(int i=1;i<list.size();i++)
    list.get(i-1);//第一个
    list.get(i);//第二个

参考技术C 使用Iterator迭代输出就可以了 参考技术D 这个是冒泡排序. 你网上搜下java冒泡排序.

java中怎么list 转成 map?

如题!
我就是想把list 中的数据转到map中怎么转
我是用hibernate 的HQL语句从数据库中取出数据,存在list中
但是我要把list中的数据用DWR写入到页面中,就必须把list中的数据引入到map中啊!

参考技术A 可以转换的,你用循环把list中的数据读出来,Iterator it=list().iterator();
while(it.hasNext)
对象类型 XX=(对象类型)it.next();

然后再把对象放到map里面就行了.本回答被提问者和网友采纳
参考技术B Map<String, String> map = new HashMap<String,String>();
下面是我常用的方法
将key转为List
List<String> keyList = new ArrayList<String>(map.keySet());
将value转为list
参考技术C list中的对象是一个值 而map中的是一对数值 !!!!
转了之后 不行吧
参考技术D 不懂你的意思。

以上是关于java 怎么把list里面的数据取出来依次比较的主要内容,如果未能解决你的问题,请参考以下文章

java 对list里面的数据作比较

java 对比两个list并取值

如何取出数组中相同的对象

java怎样把两个list里边相同的数据取出

java Map集合中如何去比较整型的Value值得最小值

Java 怎么取出一个字符串中的数字 并加上一个数 再把原来字符串输出来~数字改为结果 ·