在java中,如何实现英文名字的排序,英语写中国人的名字顺序?

发布时间:2020-07-09 17:52:33

在java中,如何实现英文名字的排序,英语写中国人的名字顺序?

网友回答

给你个例子啊。你看过之后就明白了。
  import java.util.Arrays;
  public class EnglishSort {
   public static void main(String[] args) {
   e799bee5baa6e4b893e5b19e31333264656233 String str="IndexWriter writer = new IndexWriter(ramDir, analyzer)";
   StringBuffer buff=new StringBuffer(str);
   char[] arr=str.toCharArray();
   Arrays.sort(arr);
  
   for(int i=0,j=0;i<arr.length;i++){
   if(String.valueOf(arr[i]).matches("[a-zA-Z]")){
   while(true){
   if(String.valueOf(buff.charAt(j)).matches("[a-zA-Z]")){
   buff.setCharAt(j, arr[i]);
   j++;
   break;
   }
   j++;
   }
   }
   }
  
   System.out.println(buff.toString());
   }
  }

网友回答

中国人的姓名译成英语时,用汉语拼音书写,但不加声调。 它可以保持汉语的特点,即姓在前,名在后。姓和名必须分开写,并且大写姓和名的第一个字e79fa5e98193e59b9ee7ad9431333361323534母。如: Lin Tao (林涛), Han Mei (韩梅)。如果名字是两个字组成的,要连在一起拼写,并大写第一个字母。如:Li Xiaowen。又如:Zhang Lihua(张立华)。如果名字部分的第二个字是以元音字母开头的时候,一般要在两个字中间加“’”。如:李丽安写成Li li’an,否则易被读成“李莲”。当姓为复姓时,与名字部分书写规则相同。如:Sima Qian(司马迁)。
  
  英语姓名译成汉语要保持英语的特点,即名在前,姓在后。名和姓的第一个字母要大写,两词应保持一定的距离,不能连写。 例如:“John Brown(约翰·布朗)”。另外,英语的名和姓之间可以插入 第二个名字,形成全名,如:“John Henry Brown”。这第二个名字是父母给取的,也许是父母或者祖父母的名字。不过,一般情况人们可以省去第二个名字。第一个名字通常都有昵称。亲朋好友之间彼此都用昵
  称,如称John为Jack。人们要用Mr.(先生), Mrs.(夫人), Miss(小姐)称谓某人时,这些称谓只能用在姓的前面,例如:Mr. Brown(布朗先生),Mrs. Brown(布朗夫人),Miss Brown(布朗小姐)。切记Mr.,Mrs., Miss不能用在其他的名字前面。如:Mr. John 或Mr. Henry。
以上问题属网友观点,不代表本站立场,仅供参考!