Как проверить дубликат элемента в карте Java
У меня есть функция, которая позволяет вводить ключ и значение в карту.
вот мой код
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class MapDemo {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Map<String, Integer> map = new HashMap<>();
System.out.println("Elemment number: ");
String sNum = input.nextLine();
int iNum = Integer.parseInt(sNum);
for (int i = 0; i < iNum; i++) {
System.out.println("Key: ");
String sKey = input.nextLine();
System.out.println("Value: ");
String sValue = input.nextLine();
int iValue = Integer.parseInt(sValue);
map.put(sKey, iValue);
}
}
}
Я не знаю, как проверить следующий элемент, который я введу. то же самое с элементом ранее, и если это то же самое, я введу снова.
2 ответа
Решение
Добавьте цикл while:
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Map<String, Integer> map = new HashMap<>();
System.out.println("Elemment number: ");
String sNum = input.nextLine();
int iNum = Integer.parseInt(sNum);
for (int i = 0; i < iNum; i++) {
String sKey ;
do {
System.out.println("Key: ");
sKey = input.nextLine();
} while (map.containsKey(sKey));
System.out.println("Value: ");
String sValue = input.nextLine();
int iValue = Integer.parseInt(sValue);
map.put(sKey, iValue);
}
}
Существует метод Collection.contains(), доступный в каждой структуре данных, которая реализует интерфейс Collection!!!!