java里面字典排序代码 java实现英文单词字典排序

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

ComparatorObject 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.Arrays;

import java.util.Scanner;

//必须实现Comparable接口

public class Word implements ComparableWord{

private final  String word;

public String getWord() {

return word;

}

//构造器什么的无视吧

public Word(String word) {

if(word == null)

throw new NullPointerException("不可以创造空单词!");

this.word = word;

}

//实现compareTo方法.主要的排序思路在这里

@Override

public int compareTo(Word target) {

if(target == null)

return 1;

if(target.getWord().equalsIgnoreCase(getWord()))

return 0;

char[] selfLetters = getWord().toLowerCase().toCharArray();

char[] targetLetters = target.getWord().toLowerCase().toCharArray();

int selfLength = selfLetters.length;

int targeLength =targetLetters.length;

int minLength = Math.min(selfLength, targeLength);

for(int index = 0;index  minLength;index++){

if(selfLetters[index]  targetLetters[index]){

return 1;

}

else if (selfLetters[index]  targetLetters[index]){

return -1;

}

continue;

}

return selfLength  targeLength ? 1 : -1 ;

}

//重写 ToString 方法以便打印输出

@Override

public String toString() {

return word;

}

//主方法.用来查看效果

public static void main(String[] args) {

 

int size = 5;//测试用的数组长度(单词数);

// 创造一个Word的数组用来保存输入的单词

Word[] words =  new Word[size];

Scanner sc = new Scanner(System.in);

for(int i=0;isize;i++)

{

System.out.println("请输入第"+(i+1)+"个单词");

words[i] = new Word(sc.nextLine());

}

sc.close();//关闭流

System.out.println("排序结果为:");

//使用Arrays.sort方法排序,sort对自动调用你的compareTo方法来比较

Arrays.sort(words);

//打印出结果

System.out.println(Arrays.toString(words));

}

}

这是我刚写的。测试结果还可以。逻辑可能不是很严谨 不过作为作业应该应付足够了

用Java编写程序,对分行输入的若干字符串按字典序(由小到大)进行排序并输出。

package special7_2;

import java.util.*;

public class Special7_2 {

public static void main(String[] args) {

// TODO Auto-generated method stub

String str="";

Scanner scan=new Scanner(System.in);

ArrayListString arraylist=new ArrayListString();

while(!str.equals("#")){

str=scan.nextLine();

arraylist.add(str);

}

arraylist.remove("#");

Object[]arr=arraylist.toArray();

for(int i=0;iarraylist.size()-1;i++){

//String str1=(String)arr[i];

for(int j=0;jarraylist.size()-1-i;j++){

if(((String) arr[j]).compareTo((String) arr[j+1])0){

//swap(arr,i,j);

String temp;

temp=(String) arr[j];

arr[j]=arr[j+1];

arr[j+1]=temp;

}

}

}

for(int i=0;iarraylist.size();i++){

//String str1=(String)arr[i];

System.out.println(arr[i]);

}

}

/*private static void swap(Object[] arra, int i, int j) {

// TODO Auto-generated method stub

String temp = (String) arra[i];

arra[i] = arra[j];

arra[j] = temp;

}*/

}


网站栏目:java里面字典排序代码 java实现英文单词字典排序
当前URL:http://pwwzsj.com/article/doohcpo.html