输入5种水果的英文名称,用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()方法。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-19
1、新建test.properties

#水果定义
CooperationBussiness=grape,orange,banana,apple,peach
#定义排列顺序 后面的值越小 排序越靠前
grape=1
orange=6
banana=3
apple=2
peach=5

2、建立ComparatorTest,此类实现排序功能

import java.util.Comparator;
import java.util.ResourceBundle;
/**
* @author 韩卫召
*/
public class ComparatorTest implements Comparator {

//配置文件名称
final ResourceBundle propResource = ResourceBundle.getBundle("test");
//读取进行比较的内容
String fruit = propResource.getString("CooperationBussiness");
String fruits[] =fruit.split(",");

public int compare(Object o1, Object o2) {
// TODO Auto-generated method stub
String str1 = (String) o1;
String str2 = (String) o2;
int i=new Integer(propResource.getString(str1)).intValue();
int j=new Integer(propResource.getString(str2)).intValue();;
if (i > j) {
return 1;
} else {
if (i == j) {
return 0;
} else {
return -1;
}
}
}
}

3、建立测试类Test
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Test {

/**
* @author 韩卫召
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
List result = new ArrayList();
result.add("grape");
result.add("orange");
result.add("banana");
result.add("apple");
result.add("peach");

//排序
ComparatorTest comp = new ComparatorTest();
Collections.sort(result, comp);

for(int i=0;i<result.size();i++){
System.out.println((String)result.get(i));
}
}

}本回答被网友采纳
相似回答