Java 如何将一个数组值映射到另一个数组值
我在将两个数组的值相互映射时遇到了困难。我有一个字符串数组列表,用于存储用户选择的值:Java 如何将一个数组值映射到另一个数组值,java,arrays,arraylist,Java,Arrays,Arraylist,我在将两个数组的值相互映射时遇到了困难。我有一个字符串数组列表,用于存储用户选择的值: private List<String> selectedCertificates = new ArrayList<String>(); 所以现在我的问题是,我只想为所选语言创建一个字符串数组,它将为所选证书的相同序列[“SS”、“CC”、“SC”]包含[“EN”、“EN”、valueofssLanguage],那么我如何实现这一点呢 谢谢使用: Map Map=new HasMap
private List<String> selectedCertificates = new ArrayList<String>();
所以现在我的问题是,我只想为所选语言创建一个字符串数组,它将为所选证书的相同序列[“SS”、“CC”、“SC”]包含[“EN”、“EN”、valueofssLanguage],那么我如何实现这一点呢
谢谢使用:
Map Map=new HasMap();
map.put(docType[0],“EN”);
...
您可以使用获取值的集合视图,即语言集合。Hashmap,Hashtable可以从字符串映射到字符串。
map
应该适合您的需要我应该做什么我需要一些指导。我应该用上面建议的代码替换我的代码吗?如何在单独的字符串数组中获取所选语言?感谢您的帮助,但是一旦选择了证书,映射是否将获取语言的值?@Learner30您可以使用map.get(certificate)
检索与特定证书对应的语言。有关映射操作的信息,请参见Javadoc。是的,map
似乎是这里的最佳选择。manouti,如果我错了,请纠正我。首先,我将按照您在上述答案中指定的方式进行映射。然后,我将使用map.get(selectedCertificates)来获取所选映射,对吗?我应该把它放在一个for循环中吗?另外,我是否应该删除DocType[0]=“CE”;从我的代码?
String[] DocType = new String[4];
String[] DocLanguage = new String[4];
DocType[0] = "CE";
DocLanguage[0] = "EN";
DocType[1] = "SC";
DoctLanguage[1] = "EN";
DocType[2] = "SS";
DocLanguage[2] = ssLanguage;
DocType[3] = "RR";
DocLanguage[3] = "FR";
Map<String, String> map = new HasMap<>();
map.put(docType[0], "EN");
...