當前位置:首頁 » 編程語言 » java漢字排序

java漢字排序

發布時間: 2022-07-19 17:16:10

『壹』 java 漢字首字母排序

我知道用java可以通過漢字的獲得到首字母。下面是源碼
import net.sourceforge.pinyin4j.PinyinHelper;

public class PinyinAPI {

/**
* 提取每個漢字的首字母(大寫)
*
* @param str
* @return
*/
public static String getPinYinHeadChar(String str) {
if (isNull(str)) {
return "";
}
String convert = "";
for (int j = 0; j < str.length(); j++) {
char word = str.charAt(j);
// 提取漢字的首字母
String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
if (pinyinArray != null) {
convert += pinyinArray[0].charAt(0);
}
else {
convert += word;
}
}

convert = string2AllTrim(convert);
return convert.toUpperCase();
}

/*
* 判斷字元串是否為空
*/

public static boolean isNull(Object strData) {
if (strData == null || String.valueOf(strData).trim().equals("")) {
return true;
}
return false;
}

/**
* 去掉字元串包含的所有空格
*
* @param value
* @return
*/
public static String string2AllTrim(String value) {
if (isNull(value)) {
return "";
}
return value.trim().replace(" ", "");
}

public static void main(String[] args) {
String ss = PinyinAPI.getPinYinHeadChar("中國");
System.out.print(ss);//ZG
}
}

『貳』 java 中文姓名排序!!!

import java.util.*;
import java.text.*;

public class SortByChinese {
//測試
public static void main(String[] args) {

String[] a1 = {"保定","何子安","於小雲","劉帝","劉何保定子安","劉","劉娜","家強","劉博"};
getSortOfChinese(a1);
for (int i = 0; i < a1.length; i++) {
System.out.println(a1[i]);
}
}
/**
*
* @param a String[]
* @return String[]
*/
public static String[] getSortOfChinese(String[] a) {
// Collator 類是用來執行區分語言環境這里使用CHINA
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);

// JDKz自帶對數組進行排序。
Arrays.sort(a, cmp);
return a;
}
}

自己測試哦!

『叄』 java 中文一,二,到十,怎麼排序

如果按照資料庫自己排序,會按照中文的拼音進行排序(A-Z)有實驗過。如果要實現樓主這樣的功能。我建議,增加兩個欄位,分別是等級(level,最好是約定一個與A級B級對應的數字,如A級填1)、班級號(classno,班級 填,1,2,3代表1班2班3班),兩個欄位就可以確定一個班級。然後SQL語句為 select 查詢的內容 from 表名 order by level,classno (先按level,後按classno排序)

『肆』 Java怎麼按照漢字字典順序給字元串排序

//按照中文第一個字母升序排列的實現
import java.text.Collator;
import java.util.Arrays;
import java.util.Comparator;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Comparator<Object> com=Collator.getInstance(java.util.Locale.CHINA);
String[] newArray={"上海","天津","廣州","杭州","遼寧","南京","武漢","北京","廈門","內蒙"};
Arrays.sort(newArray,com);
for(String i:newArray){
System.out.print(i+" ");
}
}
}

『伍』 求一個JAVA的漢字排序程序。。。

對漢字是按拼音排序的,示例:import java.util.*;
import java.text.*;public class Test{
public static void main(String args[]) {
//Comparator cmp = (RuleBasedCollator)java.text.Collator.getInstance(java.util.Locale.CHINA);//try testing various locales
Comparator cmp = java.text.Collator.getInstance(java.util.Locale.CHINA);//try testing various locales
String[] arr = {"張三", "李四", "張", "王"};
java.util.Arrays.sort(arr, cmp);
for (int i = 0; i < arr.length; i++)
System.out.println(arr[i]);
Comparator cmp2 = java.text.Collator.getInstance();//try default locale
String[] arr2 = {"我", "是", "草", "嗎"};
java.util.Arrays.sort(arr2, cmp2);
for (int i = 0; i < arr2.length; i++)
System.out.println(arr2[i]);
}
}

『陸』 Java中如何實現中文排序

publicclassSortByChinese{
//測試
publicstaticvoidmain(String[]args){

String[]a1={"保定","何子安","於小雲","劉帝","劉何保定子安","劉","劉娜","家強","劉博"};
getSortOfChinese(a1);
for(inti=0;i<a1.length;i++){
System.out.println(a1[i]);
}
}
/**
*
*@paramaString[]
*@returnString[]
*/
publicstaticString[]getSortOfChinese(String[]a){
//Collator類是用來執行區分語言環境這里使用CHINA
Comparatorcmp=Collator.getInstance(java.util.Locale.CHINA);

//JDKz自帶對數組進行排序。
Arrays.sort(a,cmp);
returna;
}
}publicclassSortByChinese{

//測試
publicstaticvoidmain(String[]args){

String[]a1={"小二","張三","李四","王五","劉七"};
getSortOfChinese(a1);
for(inti=0;i<a1.length;i++){
System.out.println(a1[i]);
}
}
/**
*
*@paramaString[]
*@returnString[]
*/
publicstaticString[]getSortOfChinese(String[]a){
//Collator類是用來執行區分語言環境這里使用CHINA
Comparatorcmp=Collator.getInstance(java.util.Locale.CHINA);

//Arrays工具類對數組進行排序。
Arrays.sort(a,cmp);
returna;
}
}

試試對你的問題是否有用

『柒』 Java編程中怎樣實現中文排序

簡單的實現排序,可以參考如下的代碼

importjava.text.Collator;
importjava.util.Arrays;
importjava.util.Comparator;
importjava.util.Locale;

publicclassPYDemo{
publicstaticvoidmain(String[]args){
String[]names={"趙z子z龍l","劉l備b","關g羽y","張z飛f"};
System.out.println("排序前"+Arrays.toString(names));
Comparatorcpt=Collator.getInstance(Locale.CHINA);
Arrays.sort(names,cpt);
System.out.println("排序後"+Arrays.toString(names));
}
}

測試輸出

排序前[趙z子z龍l,劉l備b,關g羽y,張z飛f]
排序後[關g羽y,劉l備b,張z飛f,趙z子z龍l]

如果有一些非常用的漢字,生僻字等,建議使用一些jar包實現,比如pinyin4j

熱點內容
忘記qq密保怎麼改密碼 發布:2025-03-03 12:12:15 瀏覽:369
c語言編程結構 發布:2025-03-03 12:05:06 瀏覽:694
zip無法解壓亂碼 發布:2025-03-03 12:04:11 瀏覽:309
十台伺服器電腦功率多大 發布:2025-03-03 11:58:31 瀏覽:337
連接伺服器異常如何解決 發布:2025-03-03 11:53:58 瀏覽:640
推導編譯原理 發布:2025-03-03 11:37:31 瀏覽:259
80人團隊解壓拓展哪家價格便宜 發布:2025-03-03 11:15:16 瀏覽:345
androidwebview插件 發布:2025-03-03 11:08:15 瀏覽:566
智慧雲伺服器搭建 發布:2025-03-03 10:57:53 瀏覽:973
編程接單 發布:2025-03-03 10:57:13 瀏覽:892