我有c1,c2,c3,c4等 每个c都有2个字母的字符串值,例如AX或BY或CZ 然后我拆分该字符串,所以我有cArray与2个字符串的数组。 我的问题是如何将字符串值更改为A或B或C的整数值,因此我可以将它用于任意数量的c,而不使用每个c的if语句
String c1 = args[0];
String c2 = args[1];
String[] c1Array = c1.split("(?!^)");
String[] c2Array = c2.split("(?!^)");
int total = c1Array[0] + c2Array[0];
例如我希望A的值为1,B的值为2,C的值为3
答案 0 :(得分:0)
您可以使用Map
String cArray[]={"AX","BY","CZ"};
Map<String, Integer> map=new HashMap<String, Integer>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
String[] c1Array = cArray[0].split("(?!^)");//Will give you A
String[] c2Array = cArray[1].split("(?!^)");//Will give you B
int total = map.get(c1Array[0]) + map.get(c2Array[0]);
System.out.println(total);//Output: 3
答案 1 :(得分:0)
我想你需要一张地图。像
这样的东西Map<Character, Integer> charValue = new HashMap<Character, Integer>();
然后您需要将所有包机值组合放在此地图中。
charValue.put('A', 1);
charValue.put('B', 1);
然后,一旦你完成了在地图中输入所有这些值,就可以获取它们
System.out.println(charValue.get('A'));
System.out.println(c1Array[0]); //in your case
此外,
charValue.put('A', 1); //and
charValue.put('a', 1); //two different things