【发布时间】:2013-03-14 07:07:29
【问题描述】:
ArrayList<String> dirNo = new ArrayList<String>();
dirNo.add("1");
dirNo.add("2");
dirNo.add("3");
dirNo.add("4");
dirNo.add("5");
dirNo.add("6");
dirNo.add("7");
dirNo.add("8");
dirNo.add("9");
dirNo.add("10");
dirNo.add("11");
System.out.println("max : " + Integer.parseInt(Collections.max(dirNo)));
执行上述代码后,打印9作为输出。
但实际上最大值应该是11。
为什么我得到 9 作为 max ?
【问题讨论】:
-
您正在进行字符串比较。这与整数比较完全不同。更改您的代码以使用 Integer,一切都应该像魅力一样工作。
标签: java collections compare