Похоже, вы пытаетесь реализовать объектно-ориентированное программирование с использованием строк. К счастью, Java уже это сделала.
Таким образом, сделать что-то вроде этого, вместо:
public class MyClass implements Comparable<MyClass> {
private final String aString; //could be char perhaps..
private final Integer anInteger;
public MyClass(final String aString, final Integer anInteger) {
this.aString = aString;
this.anInteger = anInteger;
}
public String getAString() { return aString; }
public Integer getAnInteger() { return anInteger; }
public String toString() { return anInteger + " " + aString }
//comparison by number
public int compareTo(final MyClass other) {
return anInteger.compareTo(other.anInteger);
}
}
Затем вы используете это так:
final List<MyClass> myClasses = new ArrayList<>();
myClasses.add(new MyClass("a", 100));
myClasses.add(new MyClass("b", 32));
myClasses.add(new MyClass("t", 54));
myClasses.add(new MyClass("u", 1));
Collections.sort(myClasses);
показать нам, что вы пробовали? – Maljam
Что вы пытаетесь достичь? Первичный поиск по части строки и второстепенной по целочисленной части? – Mureinik
Google 'java comparator'. Таким образом, вы можете отсортировать список по некоторому настраиваемому свойству или определению порядка. –