我有一个作业,我需要从文本文件中读取文件并将行添加到列表中,按长度排序并打印出来。我的问题是Coolections.sort()按字母顺序和长度对它进行排序,我只需要按长度排序,这是我目前的代码。
import java.util.*;
import java.io.*;
public class Question3
{
public static void main(String [] args) throws IOException
{
Scanner input = new Scanner(System.in);
String path = input.nextLine();
Scanner scanner = new Scanner(new File(path));
List<String> lines = new ArrayList<String>();
while(scanner.hasNext())
{
lines.add(scanner.next());
}
Collections.sort(lines);
System.out.println(lines);
}
}
答案 0 :(得分:0)
Collections.sort(strings, new Comparator<String>() {
@Override
public int compare(String str1, String str2) {
if(str1.length() > str2.length())
return 1;
else if(str1.length() < str2.length())
return -1;
else
return 0;
}
});
这将根据字符串的长度按升序对字符串进行排序,请根据需要清理上述代码。