當前位置:成語大全網 - 漢語詞典 - 求壹個java排序程序!字典順序!

求壹個java排序程序!字典順序!

進口?Java . util . array;

進口?Java . util . scanner;

//必須實現可比接口。

公?班級?詞?器物?可比& ltWord & gt{

私人?finalString?word

公?字符串?getWord()?{

回歸?word

}

//忽略構造函數什麽的

公?Word(字符串?word)?{

如果(字?==?空)

扔?新的?NullPointerException("妳不能創造空洞的詞!");

這個詞?=?word

}

//實現compareTo方法。主要的排序思路在這裏。

@覆蓋

公?int?compareTo(Word?目標)?{

如果(目標?==?空)

回歸?1;

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

回歸?0;

char[]?自傳體?=?getWord()。toLowerCase()。toCharArray();

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

int?selfLength?=?selfLetters .長度;

int?塔格朗思?= targetLetters.length

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

for(int?指數?=?0;指數?& lt?minLengthindex++){

if(selfLetters[index]?& gt?targetLetters[index]){

回歸?1;

}

不然呢?如果?(selfLetters[index]?& lt?targetLetters[index]){

回歸?-1;

}

繼續;

}

回歸?selfLength?& gt?塔格朗思?1?:?-1?;

}

//重寫?ToString?方法打印輸出。

@覆蓋

公?字符串?toString()?{

回歸?word

}

//Main方法。用來看效果的。

公?靜電?作廢?main(String[]?args)?{

int?尺寸?=?5;//用於測試的數組長度(字數);

//?創建壹個Word數組來保存輸入的單詞。

Word[]?文字?=新?word[size];

掃描儀?sc?=?新的?掃描儀(system . in);

for(int?I = 0;我& lt尺寸;i++)

{

System.out.println("請輸入"+(i+1)+"字");

話[我]?=?新的?word(sc . nextline());

}

sc . close();//關閉流

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

//使用Arrays.sort方法進行排序,排序與自動調用compareTo方法進行比較。

Arrays.sort(單詞);

//打印出結果

system . out . println(arrays . tostring(words));

}

}這是我剛剛寫的。測試結果沒問題。邏輯可能不是很嚴謹,但作為作業應該足夠了。