创建一个同时保存索引和文本字符串的对象。喜欢
public class MyThing
{
public int index;
public String text;
}
然后,不要创建字符串的 ArrayList,而是创建这些对象的 ArrayList。
我不知道你用什么来分类它们。如果您正在编写自己的排序,那么您可以简单地与每个对象的“文本”成员进行比较,而不是与字符串对象本身进行比较。如果您使用 Arrays.sort 对其进行排序,那么您需要实现 Comparable。即:
public class MyThing implements Comparable<MyThing>
{
public int index;
public String text;
public int compareTo(MyThing that)
{
return this.text.compareTo(that.text);
// May need to be more complex if you need to handle nulls, etc
}
// If you implement compareTo you should override equals ...
public boolean equals(Object that)
{
if (!(that instanceof MyThing))
{
return false;
}
else
{
MyThing thatThing=(MyThing)that;
return this.text.equals(thatThing.text);
}
}
}
等等。根据您要执行的操作,您可能需要其他东西。