ورود

View Full Version : مرتب سازی String فارسی بر اساس حروف الفبا



haniiii
پنج شنبه 16 مرداد 1393, 00:08 صبح
سلام

بنده یه لیستی از String فارسی دارم میخوام بر اساس حروف الفبا مرتبشون کنم

برای اینکار از متد str.compareTo استفاده کردم اما نتیجه درست نیست

نتیجه دارای ۲ بخش مرتب شده هست ... مثلا از شماره ۱ تا ۲۰ به ترتیب الفبا مرتب شده و دوباره از ۲۱ بقیه لیست به صورت مرتب شده وجود داره

کسی به همچین موردی برخورده ؟ راه حل چیه ؟

ممنون

akbar8298
پنج شنبه 16 مرداد 1393, 00:24 صبح
برای کاراکتر های فارسی می تونید از این کد استفاده کنید

String farsi_arr[] = {"اکبر","رضایی"};
Collator farsiCollator = Collator.getInstance(new Locale("fa"));
Collections.sort(Arrays.asList(farsi_arr), farsiCollator );

haniiii
پنج شنبه 16 مرداد 1393, 01:36 صبح
برای کاراکتر های فارسی می تونید از این کد استفاده کنید

String farsi_arr[] = {"اکبر","رضایی"};
Collator farsiCollator = Collator.getInstance(new Locale("fa"));
Collections.sort(Arrays.asList(farsi_arr), farsiCollator );

مرسی ... البته مورد من arraylist_HashMap بود به جای compareTo از همین Collator استفاده کردم