一、思路:
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()方法。