0

我正在编写代码以在字典文件中插入一个新单词(给定)。我在 ArrayList 中添加了新单词,然后对数组进行排序以保留排序字典,collection.sort(ArrayList<E> e)但这并不能完全满足我的要求,因为我的字典是 A a a aab 。. . 但是当我对其进行排序时,上面列出了所有大写字母,然后所有小字母单词都像 A Aaina Aab 。. . 啊啊啊啊

你能帮我在不改变顺序的情况下插入单词吗?

4

3 回答 3

1

你可以这样做

Collections.sort(list,String.CASE_INSENSITIVE_ORDER);
于 2013-10-30T15:51:59.973 回答
0

首先,尝试使所有字典不区分大小写,,然后添加给定的单词,然后使用collection.sort,,,,在那个排序的数组列表中,你有你需要的索引,它实际上应该在哪里字典,, ,, 然后把它放在区分大小写的数组中,,,, 我在我的大学也有同样的任务,,, 完成它真是一团糟:)

于 2013-10-31T17:07:19.820 回答
0

您最好将条目存储在 TreeSet 中:

TreeSet<String> entries = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER).

这可能比重复添加到列表然后排序更有效。(我认为您正在附加到列表中,然后对添加的每个条目进行排序;对于大型字典,这可能会变慢。不过,如果您在添加所有条目对列表进行排序,这不是问题。 )

要获取条目以按顺序迭代集合 - entries.iterator()。

这具有忽略重复项的附加(可能)优势。

于 2013-10-30T16:49:29.073 回答