成语大全网 - 汉语词典 - java词典次序排序

java词典次序排序

一、思路:

1、建立一个String数组,用来存储用户输入的水果名字。

2、按字典出现的先后顺序即比较字符串大小。可以使用到String对象的compareTo()方法。

3、对比大小后,升序输出。

二、实现:

1、定义输入水果名字的个数,用来确定数组的大小,修改此值可以修改数组的大小。

2、用户输入,用循环实现接收,并存储到数组中。

3、将数据对比大小,按升序排列。使用最简单的冒泡排序法(麻烦易错)或Java的工具类(简单高效)。

4、输出排序后的数组。

实现代码:

//java代码:输入五种水果的英文,按字典出现的先后顺序循环输出。

import?java.util.Arrays;

import?java.util.Scanner;

public?class?CompareTest?{

/**

?*?一、思路:

?*?1、建立一个String数组,用来存储用户输入的水果名字。

?*?2、按字典出现的先后顺序即比较字符串大小。可以使用到String对象的compareTo()方法。

?*?3、对比大小后,升序输出。

?*?二、实现:

?*?1、定义输入水果名字的个数,用来确定数组的大小,修改此值可以修改数组的大小。

?*?2、用户输入,用循环实现接收,并存储到数组中。

?*?3、将数据对比大小,按升序排列。使用最简单的冒泡排序法(麻烦易错)或Java的工具类(简单高效)。

?*?4、输出排序后的数组。

?*?*/

//定义用户输入数据的个数,修改此值可以修改个数及数据接收数组的大小

public?static?final?int?COUNT?=?5;

public?static?void?main(String[]?args)?{

//?TODO?Auto-generated?method?stub

//定义接收用户输入数据的数组

String[]?fruits?=?new?String[COUNT];

Scanner?reader?=?new?Scanner(System.in);

//接收用户输入的数据

System.out.println("请输入"+COUNT+"个水果的英文名字:");

for(int?i?=?0;i?<?COUNT;i++){

fruits[i]?=?reader.next();

}

reader.close();

//比较数组中数据的大小,并按升序排列。冒泡法

for(int?i?=?1;i?<=?(COUNT-1);i++){

for(int?n?=?0;n?<?(COUNT-i);n++){

if(fruits[n].compareTo(fruits[n+1])?>?0){

String?temp?=?null;

temp?=?fruits[n];

fruits[n]?=?fruits[n+1];

fruits[n+1]?=?temp;

}

}

}

//不使用冒泡排序,使用java自带的工具类,一句话即可,排序由底层自动完成

//Arrays.sort(fruits);

//输出排序后的数组,即为字典中的出现顺序

System.out.println("这些水果的英文名在字典中出现的顺序是:");

for(int?i?=0;i?<?COUNT;i++){

System.out.print(fruits[i]?+?"?");

}

System.out.println();

}

}

运行结果图:

应注意:程序中使用的比较方式是区分大小写的,如果是不区分大小写的比较方式,应使用compareToIgnoreCase()方法。