मैं ArrayList<String>
सॉर्ट करना चाहता हूं लेकिन समस्या मेरी मूल भाषा वर्ण है - मेरा वर्णमाला इस तरह है: a, ą, b, c, č, d, e, f ... z, ž
। जैसा कि आप z
चरित्र अंत से दूसरे हैं और ą
वर्णमाला में दूसरा है, इसलिए जब मैं अपनी सरणी को सॉर्ट करता हूं तो इसे गलत तरीके से सॉर्ट किया जाता है। मेरे सभी मूल भाषा वर्ण सरणी के अंत में स्थानांतरित हो जाते हैं। उदाहरण:जावा सरणी सॉर्ट यूटीएफ -8
package lt;
import java.util.ArrayList;
import java.util.Collections;
public class test {
public static void main(String[] args) {
List<String> items = new ArrayList<>();
items.add("bbc");
items.add("ąbc");
items.add("abc");
items.add("zzz");
System.out.println("Unsorted: ");
for(String str : items) {
System.out.println(str);
}
Collections.sort(items);
System.out.println();
System.out.println("Sorted: ");
for(String str : items) {
System.out.println(str);
}
}
}
आउटपुट:
Unsorted:
bbc
ąbc
abc
zzz
Sorted:
abc
bbc
zzz
ąbc
होना चाहिए:
Sorted:
abc
ąbc
bbc
zzz
देखें [यह सवाल] (http://stackoverflow.com/questions/4225523/collator-doesnt-sort-right-for-given-locale) –