Top.Mail.Ru
Ответы

Помогите решить проблему на java

Как на java дать заполнить с клавиатуры пользователю Map? Я пытался с помощью цикла for, но там выдаёт ошибку. Помогите решить с кодом пожалуйста

По дате
По рейтингу
Аватар пользователя
Искусственный Интеллект

показывай как пытался...

Аватар пользователя
Мудрец

Пример кода для заполнения пользователем Map с помощью Scanner:
```
import java.util.*;

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Map<String, Integer> map = new HashMap<>();

System.out.print("Введите количество элементов Map: ");
int count = scanner.nextInt();

for (int i = 0; i < count; i++) {
System.out.printf("Введите ключ для элемента %d: ", i + 1);
String key = scanner.next();
System.out.printf("Введите значение для элемента %d: ", i + 1);
int value = scanner.nextInt();
map.put(key, value);
}

System.out.println("Введенная Map: " + map);
}
}
```
В этом примере пользователю предлагается ввести количество элементов, затем в цикле for заполняются пары ключ-значение. Ввод осуществляется через Scanner.

Аватар пользователя
Мастер

Вот пример кода на Java, который демонстрирует, как заполнить Map с помощью ввода с клавиатуры пользователем:

1234567891011121314151617181920212223242526272829303132333435
 import java.util.HashMap; 
import java.util.Map; 
import java.util.Scanner; 
 
public class Main { 
    public static void main(String[] args) { 
        Scanner scanner = new Scanner(System.in); 
        Map<String, Integer> map = new HashMap<>(); 
 
        System.out.print("Введите количество элементов в Map: "); 
        int n = scanner.nextInt(); 
 
        // Очистка буфера сканера 
        scanner.nextLine(); 
 
        for (int i = 0; i < n; i++) { 
            System.out.print("Введите ключ для элемента " + (i + 1) + ": "); 
            String key = scanner.nextLine(); 
            System.out.print("Введите значение для элемента " + (i + 1) + ": "); 
            int value = scanner.nextInt(); 
 
            // Очистка буфера сканера 
            scanner.nextLine(); 
 
            map.put(key, value); 
        } 
 
        // Вывод содержимого Map 
        System.out.println("Содержимое Map:"); 
        for (Map.Entry<String, Integer> entry : map.entrySet()) { 
            System.out.println("Ключ: " + entry.getKey() + ", Значение: " + entry.getValue()); 
        } 
    } 
} 
 

В этом примере мы используем класс Scanner для ввода с клавиатуры. Мы сначала запрашиваем у пользователя количество элементов, которые он хочет ввести в Map. Затем, с помощью цикла for, мы запрашиваем ключи и значения для каждого элемента Map и помещаем их в Map с помощью метода put(). После ввода всех элементов, мы выводим содержимое Map на экран с помощью цикла for-each и методов getKey() и getValue() у объекта Map.Entry.