我的問題是,我想比較一些不使用字母排序的字符。 這裏是我的順序關係:一個<乙<牛逼< Q <Ç< d <è< F的如何使一個字母順序不同的字母順序的比較器的字母順序
我怎麼能創造這樣的比較?我必須寫所有的情況是這樣的:
if (char1.equals(char2)) {
return 0;
} else if (char1.equals("A")) {
return -1;
} else if (char1.equals("B") && char2.equals("A")) {
return 1;
} else if (char1.equals("T")
&& (char2.equals("B") || char2.equals("A"))) {
return 1;
} else if (char1.equals("Q")
&& (char2.equals("T") || char2.equals("B") || char2
.equals("A"))) {
return 1;
} else if (char1.equals("C")
&& (char2.equals("Q") || char2.equals("T")
|| char2.equals("B") || char2.equals("A"))) {
return 1;
} else if (char1.equals("D")
&& (char2.equals("C") || char2.equals("Q")
|| char2.equals("T") || char2.equals("B") || char2
.equals("A"))) {
return 1;
} else if (char1.equals("E")
&& (char2.equals("D") || char2.equals("C")
|| char2.equals("Q") || char2.equals("T")
|| char2.equals("B") || char2.equals("A"))) {
return 1;
} else if (char1.equals("F")
&& (char2.equals("E") || char2.equals("D")
|| char2.equals("C") || char2.equals("Q")
|| char2.equals("T") || char2.equals("B") || char2
.equals("A"))) {
return 1;
}
那豈不是更好地使用枚舉,而不是一個角色?據我所知,你只想比較單個字符,而不是字符串。 –
創建查找表(char - > order)並將'lookup [char1]'與'lookup [char2]'進行比較。 – Phylogenesis
一個解決方案是將字符放入列表並使用索引 –