1
我做了一个程序,使一个新的地图,从用户获取输入,并填补了地图...在地图更换钥匙,
然后我倒在地图键/值,并提出了新的地图它...
我坚持的唯一的东西,这是困难的部分...是检查是否有重复的“价值观”,如果是这样的话......我想只保留1对应于其关键字的较小值... 如果我有例如,12 = 13,8 = 13,我想把8 = 13放在我的第二个倒转映射中,并删除12 = 13。
public class
{
public static void main(String[] args)
{
PrintStream output = new PrintStream(System.out);
Scanner input = new Scanner(System.in);
Map<String,String> normal = new HashMap<String,String>();
output.println("Enter your map, one key-value pair per line,");
output.println("comma-separated. Use empty line as sentinel.");
for (String entry = input.nextLine(); entry.length() !=0;
entry = input.nextLine())
{
int comma = entry.indexOf(",");
String key = entry.substring(0,comma);
String value = entry.substring(comma+1);
normal.put(key,value);
}
output.println(normal);
Map<String,String> reverse = new HashMap<String,String>();
for (Map.Entry<String,String> entry : normal.entrySet())
{
String keyY = entry.getKey();
String valueE = entry.getValue();
reverse.put(valueE,keyY);
}
output.println(reverse);
}
}
这是不是真的清楚你wan't什么,也许给一个代码示例? – hY8vVpf3tyR57Xib 2014-11-22 22:09:47
在第二个Map中输入一个键/值之前,检查该键是否已经存在? – fishinear 2014-11-22 22:10:13
我的歉意,这里是代码.. – 2014-11-22 22:21:32