Java 尝试按字母顺序显示3个随机选择的城市

Java 尝试按字母顺序显示3个随机选择的城市,java,Java,希望以任意顺序输入3个城市,并希望java按字母顺序显示它们。考虑使用swap选项,但认为附带的代码可以与“if”“else”语句一起使用。有什么想法吗?谢谢 import java.util.Scanner; public class OrderTwoCities { public static void main(String[] args) { Scanner input = new Scanner(System.in); // Prompt the user

希望以任意顺序输入3个城市,并希望java按字母顺序显示它们。考虑使用swap选项,但认为附带的代码可以与“if”“else”语句一起使用。有什么想法吗?谢谢

import java.util.Scanner;

public class OrderTwoCities {
    public static void main(String[] args) {
    Scanner input = new Scanner(System.in);

    // Prompt the user to enter two cities
    System.out.print("Enter the first city: ");
    String city1 = input.nextLine();
    System.out.print("Enter the second city: ");
    String city2 = input.nextLine();
    System.out.print("Enter the third city: ");
    String city3 = input.nextLine();

    if (city1.compareTo(city2) < 0 && city2.compareTo(city3) < 0)
        System.out.println("The cities in alphabetical order are " +
        city1 + " " + city2 + " " + city3);
    else
        System.out.println("The cities in alphabetical order are " +
        city3 + " " + city2 + " " + city1);
    }
}
import java.util.Scanner;
公共类城市{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
//提示用户输入两个城市
系统输出打印(“进入第一个城市:”;
字符串city1=input.nextLine();
系统输出打印(“进入第二个城市:”;
字符串city2=input.nextLine();
系统输出打印(“进入第三个城市:”;
字符串city3=input.nextLine();
如果(城市1.比较到(城市2)<0和城市2.比较到(城市3)<0)
System.out.println(“按字母顺序排列的城市是”+
城市1+“”+城市2+“”+城市3);
其他的
System.out.println(“按字母顺序排列的城市是”+
城市3+“”+城市2+“”+城市1);
}
}
试试这个:

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Scanner;

 public class OrderTwoCities {
 public static void main(String[] args) {
 Scanner input = new Scanner(System.in);

// Prompt the user to enter two cities
   System.out.print("Enter the first city: ");
   String city1 = input.nextLine();
   System.out.print("Enter the second city: ");
   String city2 = input.nextLine();
   System.out.print("Enter the third city: ");
   String city3 = input.nextLine();

 ArrayList<String> cities = new ArrayList<String>();
  cities.add(city1);
  cities.add(city2);
  cities.add(city3);
  Collections.sort(cities); // Sorting the cities in alphabetical order
  System.out.println("The cities in alphabetical order are : ");
  for (String city : cities) {
       System.out.println(city);
      }

    } 
}
import java.util.ArrayList;
导入java.util.Collection;
导入java.util.Collections;
导入java.util.Scanner;
公共类城市{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
//提示用户输入两个城市
系统输出打印(“进入第一个城市:”;
字符串city1=input.nextLine();
系统输出打印(“进入第二个城市:”;
字符串city2=input.nextLine();
系统输出打印(“进入第三个城市:”;
字符串city3=input.nextLine();
ArrayList cities=新的ArrayList();
城市。添加(城市1);
城市。添加(城市2);
城市。添加(城市3);
Collections.sort(cities);//按字母顺序对城市进行排序
System.out.println(“按字母顺序排列的城市是:”);
for(字符串城市:城市){
系统输出打印(城市);
}
} 
}

您可以创建一个字符串列表,对其进行排序,然后像这样迭代其内容:

System.out.println("Enter the names of 3 cities : ");
List<String> cities =new ArrayList<>();
Scanner s = new Scanner(System.in);
    for(int x=0; x<3; x++){
    cities.add(s.nextLine());
}
 Collections.sort(cities);
 System.out.println("Cities in alphabetical order: ");
 for(String city:cities)
     System.out.print(city+" ");;
     System.out.println();
  } 
} 
System.out.println(“输入3个城市的名称:”);
List cities=new ArrayList();
扫描仪s=新的扫描仪(System.in);
对于(intx=0;x,可以使用Arrays.sort(arr)方法对arr元素进行排序
例如:

扫描仪输入=新扫描仪(System.in);
字符串[]arr=新字符串[3];
//提示用户输入两个城市
系统输出打印(“进入第一个城市:”;
arr[0]=input.nextLine();
系统输出打印(“进入第二个城市:”;
arr[1]=input.nextLine();
系统输出打印(“进入第三个城市:”;
arr[2]=input.nextLine();
数组。排序(arr);
对于(int i=0;i你必须考虑更多的情况,只有2个你不能覆盖所有可能的排序。提示:有6种可能性,不只是2种。对于任意数量的元素的一般情况,考虑将城市添加到<代码> ARARYLISTAB/CODE >,并使用<代码>集合(SoT)进行排序。
@GaryStevenson:请点击旁边的“勾号”接受答案,并投赞成票。这对其他人也有帮助。问候:)
Scanner input = new Scanner(System.in);
String [] arr = new String[3];
// Prompt the user to enter two cities
System.out.print("Enter the first city: ");
arr[0] = input.nextLine();
System.out.print("Enter the second city: ");
arr[1] = input.nextLine();
System.out.print("Enter the third city: ");
arr[2] = input.nextLine();
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
    System.out.println(arr[i]);
}