Bir String'i java'daki içeriğine göre sıralamak için yerel bir yol var mı? Örneğin.Java'da tek bir String'i sırala
import java.util.Arrays;
public class Test
{
public static void main(String[] args)
{
String original = "edcba";
char[] chars = original.toCharArray();
Arrays.sort(chars);
String sorted = new String(chars);
System.out.println(sorted);
}
}
DÜZENLEME: bir String yapıcı çağrı ardından Arrays.sort
ardından
String s = "edcba" -> "abcde"
Doğru yol, kod noktalarını sıralamak olabilir. Maalesef String.toCodePointArray yok. (Hangi sıraya göre sıralanmalıyız, btw?) –
ICU projesi, UTF-16 sıralama yöntemi kod noktası sırasını açıklar: http://icu-project.org/docs/papers/utf16_code_point_order.html. Arrays.sort'un, aralığın tanımlandığı şekilde herhangi bir ek karakteri yok edeceğini sanmıyorum, ama bana teklif verme. – McDowell
Belki bir şeyi yok etmeyebilir, ancak örneğin büyük harf ve aksanları hesaba katmak istiyorsanız sıralama düzeni en uygun değildir. Bu algoritma "éDedCBcbAàa" ı "ABCDabcdeàé" olarak sıralayacaktır, örneğin, İngilizce (ABD) lokasyonunda, "aAàbBcCdDeé" elde etmek daha istenecektir. – eljenso