Общение одиноких массивов

  • 5
  • Недоступна
Давайте создадим не один, а сразу два массива! В одном будет убежище для 10 чисел, в другом — для 10 строк. Заполним массив строк с клавиатуры, а в каждую ячейку массива чисел запишем длину строки из массива строк, индекс ячейки которой совпадает с текущим индексом из массива чисел. Затем выводим содержимое массива чисел на экран, и задача решена.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (217)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Андрей
8 уровень, Москва
28 апреля, 13:33
https://progi.pro/java-kak-nayti-dlinu-stroki-v-massive-6846679 вот полезная ссыль, узнаете как найти длину строки в массиве
Kuksh
13 уровень
6 апреля, 16:36
На первой лекции был пример int [] n = list.length; Так же в цикле for мы сравниваем i < list.length; Но здесь в цикле мы записываем в массив int [i] n = list[i].length(); Получается обращаемся к методу? Я просто на этом моменте нормально так упоролся и сам все решил, а потом пришлось комментарии шерстить, чтобы добраться до сути. Почему так? А не i < list.length(); ?
Людмила
18 уровень, Харьков
7 апреля, 23:44
Потому что это разные понятия: В случае list.length - "length" - это поле (т.е. переменная) в классе Arrays, которая хранит количество ячеек массива. В случае list[i].length() - "length()" - это метод класса String, который вызывается у конкретной строки и возвращает её длину.
Alla Morozova
8 уровень, Рязань
27 марта, 18:49
долго не могла понять в чем дело, так как выводилось [7, 7, 4...] оказывается надо было вывести не содержимое целочисленного массива, а просто сами значения...запутали
Кирилл
8 уровень, Миасс
3 марта, 15:23
Я уйму времени потратил на решение, из за того что не поставил в конце круглые скобки: arrayN[i] = arrayS[i].length();
Vita
7 уровень, Минск
20 февраля, 18:11
если бы в 4 пункте по другому описали то что требуется, то задача была бы и понята и решена быстрее.
Igor
27 уровень, Минск
10 февраля, 20:39
Модераторы Javarush почините валидацию этой задачи, её можно обойти. Перед блоком цикла ставим переменную int j = 0. Просто зациклив ввод ячейки [j] чисел массива чисел и sout этой ячейки. Оно выводит в консоли всё верно, но просто перезаписывается постоянно первая ячейка и sout её выводит с новой строки. Тем самым в массиве чисел заполнена только первая ячейка, а все остальные нули. PS. В качестве благодарности возьмите меня тестером😁 PSS ну пожалуйста 😁
Bombus
11 уровень, Москва
3 февраля, 14:06
В решении оптимизатор предложил заменить цикл for (int i = 0; i<arrInt.length; i++) System.out.println(arrInt[i]); на следующую конструкцию: for (int j : arrInt) System.out.println(j); И все работает. Только не могу понять, что это за цикл такой? Подскажите плз.
Maksim
8 уровень, Великий Новгород
19 февраля, 12:53
Это цикл for each
Bombus
11 уровень, Москва
23 февраля, 20:12
Спасибо!
Rodion
13 уровень, Мюнхен
1 февраля, 21:30
Решил при помощи такого цикла, но есть подозрения, что можно еще короче...
Bombus
11 уровень, Москва
3 февраля, 14:01
При этом у Вас на каждом цикле число не выводится сразу же после введения строки?
Rodion
13 уровень, Мюнхен
3 февраля, 14:04
Почему же, за один проход цикла происходит запись, потом перевод этой строки в длину и последующий вывод на экран.
Bombus
11 уровень, Москва
3 февраля, 14:07
а разве не нужно было сначала ввести 10 строковых значений, а потом получить ряд числовых?
Rodion
13 уровень, Мюнхен
3 февраля, 14:16
ничего такого в условии нет
Igor
27 уровень, Минск
10 февраля, 20:51
Реально проходит валидацию, но сразу конечно же при вводе строки и выводит длину строки.
Игорь
22 уровень
22 января, 04:36
Перерыл все комментарии, минут 10 не мог понять в чем проблема, и ошибок не выдавало, а код не запускался, в итоге понял что в условии перепутал "<" с ">"
15 января, 06:25
Для корректной работы программы создание массива строк – лишняя операция. Можно обойтись и без неё.