Как массив string перевести в int java

Аватар пользователя Никита Сысоев
Никита Сысоев
17 октября 2022

Для перевода массива с элементами класса String в массив с элементами типа int следует пройтись в цикле по элементам исходного массива, привести их к типу int с помощью метода parseInt() и сохранить в новый массив. Необходимо помнить, если массив содержит то, что нельзя привести к целому числу, используя метод parseInt(), то будет выброшено исключение NumberFormatException. Например, вещественное число 3.0 или обычная строка Hello.

// Пример исключения
Exception in thread "main" java.lang.NumberFormatException: For input string: "3.0"

// Массив строк
String[] strings = {"1", "2", "3"};

// Создаем массив целых чисел с размером,
// как у массива строк
int[] numbers = new int[strings.length];

// Проходимся в цикле по исходному массиву
// Сохраняем приведенные элементы в новый массив
for (int i = 0; i < strings.length; i++) {
    numbers[i] = Integer.parseInt(strings[i]);
}

System.out.println(Arrays.toString(numbers)); // => [1, 2, 3]

1 0
Аватар пользователя Сергей Якимович
Сергей Якимович
17 ноября 2022

Можно преобразование сделать не в цикле, а в стриме :

int[] numbers = Arrays.stream(strings)
                .mapToInt(Integer::parseInt).toArray ();
1 0