Java将时间格式转换为整数或长整数

lit*_*leK 3 java string time

我想知道将00:00:00格式的时间字符串转换为整数或长整数的最佳方法是什么?我的最终目标是能够将一堆字符串时间转换为整数/长整数,将它们添加到数组中,并在数组中查找最近的时间...

我很感激任何帮助,谢谢!


好的,根据答案,我决定继续直接比较字符串.但是,我遇到了一些麻烦.可能有一个以上的"最近"时间,即两次相等的时间.如果是这种情况,我想将这两个时间的索引添加到ArrayList.这是我目前的代码:

    days[0] = "15:00:00";
    days[1] = "17:00:00";
    days[2] = "18:00:00";
    days[3] = "19:00:00";
    days[4] = "19:00:00";
    days[5] = "15:00:00";
    days[6] = "13:00:00";

    ArrayList<Integer> indexes = new ArrayList<Integer>();
    String curMax = days[0];

    for (int x = 1; x < days.length1; x++) {
        if (days[x].compareTo(curMax) > 0) {
            curMax = days[x];
            indexes.add(x);
            System.out.println("INDEX OF THE LARGEST VALUE: " + x);
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是,这是在ArrayList中添加索引1,2和3 ...

谁能帮我?

Pet*_*rey 5

您可以通过比较字符串找到最近的时间,您不需要先转换为长字符串.

例如

 String[] times = { "12:23:45", "23:59:59", "00:00:00" }
 Arrays.sort(times);
 String firstTime = times[0];
 String lastTime = times[times.length-1];
Run Code Online (Sandbox Code Playgroud)