我正在准备我的第一个 CIS 期末考试,但我尝试创建的程序遇到了一些问题。我希望程序提示用户输入 2 个字符的代码,并对字符串数组进行排序。根据输入的代码,它将显示相应的数组。
我不断遇到一些编译错误,并尝试了不同的设置方法。我想我忽略了一个更简单的概念..
package finalproject;
import java.util.Scanner;
public class FinalProject {
static Scanner sc = new Scanner(System.in);
String chargeback = sc.nextLine();
public static void main(String[] args) {
System.out.println("Enter the chargeback code : ");
}
String[] code = new String[10]; {
code [0] = "Unathourized online purchase";
code [1] = "Merchandise not receieved";
code [2] = "Not as described";
code [3] = "Inocrrect Amount";
code [4] = "Credit not received";
code [5] = "Paid by other means";
code [6] = "Cancelled Reccuring";
code [7] = "Liability Shift";
code [8] = "EMV Fallback";
code [9] = "EMV counterfit";
switch (chargeback) {
case "UO":
System.out.println(code[0]);
break;
case "MN":
System.out.println(code[1]);
break;
case "ND":
System.out.println(code[2]);
break;
case "IA":
System.out.println(code[3]);
break;
case "CV":
System.out.println(code[4]);
break;
case "PM":
System.out.println(code [5]);
break;
case "CR":
System.out.println(code[6]);
break;
case "LS":
System.out.println(code[7]);
break;
case "EF":
System.out.println(code[8]);
break;
case "EC":
System.out.println(code[9]);
break;
}
}
}
当我运行该程序时,它只显示运行: 输入退款代码: 构建成功(总时间:0 秒)
它永远不会让我在输入中输入任何内容来对任何内容进行排序。任何形式的指导将不胜感激,因为我对此相当陌生,并且仍在尝试理解它。
最佳答案
这里使用 map 是更好的方法。
https://docs.oracle.com/javase/8/docs/api/java/util/Map.html
public interface Map Key,Value
An object that maps keys to values. A map cannot contain duplicate keys; each key can map to at most one value.
This interface takes the place of the Dictionary class, which was a totally abstract class rather than an interface.
public class FinalProject {
public static void main(String[] args) {
Map<String, String> codeMap = initMap();
Scanner sc = new Scanner(System.in);
System.out.print("Enter the chargeback code : ");
String chargeback = sc.nextLine();
System.out.println(codeMap.get(chargeback));
}
private static Map<String, String> initMap()
{
// ---- init of code mapping.
Map<String, String> codeMap = new HashMap<String,String>();
codeMap.put("UO","Unathourized online purchase");
codeMap.put("MN","Merchandise not receieved");
codeMap.put("ND","Not as described");
codeMap.put("IA","Inocrrect Amount");
codeMap.put("CV","Credit not received");
codeMap.put("PM","Paid by other means");
codeMap.put("CR","Cancelled Reccuring");
codeMap.put("LS","Liability Shift");
codeMap.put("EF","EMV Fallback");
codeMap.put("EC","EMV counterfit");
// ----
return codeMap;
}
}
关于java - 如何让用户输入字符串,然后对数组进行排序以根据输入的代码显示字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55961060/