Как проверить пустой ли массив java
Для проверки пустоты массива можно использовать свойство length , которое возвращает количество элементов в массиве. Если длина массива равна нулю, значит, массив пуст.
int[] arr = new int[i]; if (arr.length == 0) System.out.println("Массив пуст"); > else System.out.println("Массив не пуст"); >
В данном примере создается пустой массив и проверяется его длина. Если длина равна нулю, то выводится сообщение «Массив пуст».
Как проверить массив на пустоту?
Оказалось это не работает.
С ARRAY[0]= работает. Но стоит пявиться ARRAY[1]= и всё.
Как же проверить за один раз, пустой ли массив?
Столько скриптов переписано, а этого не знаю, вернее, был уверен, что знаю, а оказалось вон оно как.
Должно же быть какое-то элементарное решение.

teod0r ★★★★★
02.09.21 20:51:00 MSK
[ $ -eq 0 ]
$ — возвращает длину массива
anonymous
( 02.09.21 21:16:24 MSK )
еще $ преобразует массив в строку, тогда возможно -z сработает.
anonymous
( 02.09.21 21:18:34 MSK )
Ответ на: комментарий от anonymous 02.09.21 21:16:24 MSK

Мне не количество элементов узнать нужно, а проверить, что все элементы пустые, т.е. что они ARRAY[0]= ARRAY[1]= ARRAY[2]= . , а не ARRAY[0]=iuy4tv8q ARRAY[1]=’ ‘ ARRAY[2]=1
teod0r ★★★★★
( 02.09.21 21:20:29 MSK ) автор топика
Ответ на: комментарий от anonymous 02.09.21 21:18:34 MSK

тоже не работает
teod0r ★★★★★
( 02.09.21 21:20:54 MSK ) автор топика
Ответ на: комментарий от teod0r 02.09.21 21:20:29 MSK

IFS='' -z "$"
Только IFS нужно сохранять/восстанавливать или sub-shell.
А вобще, пустой массив и массив из пустых элементов это разные вещи.
mky ★★★★★
( 02.09.21 21:31:31 MSK )
Ответ на: комментарий от teod0r 02.09.21 21:20:54 MSK
Я поигрался, вроде работает:
IFS=»; ARRAY[0]= ARRAY[1]=aaa ARRAY[2]=»; echo «$»; echo; [ -z «$» ]; echo $?
anonymous
( 02.09.21 21:44:00 MSK )
Ответ на: комментарий от mky 02.09.21 21:31:31 MSK

работает, но какое-то не очевидное решение
teod0r ★★★★★
( 02.09.21 21:53:44 MSK ) автор топика
Ответ на: комментарий от teod0r 02.09.21 21:53:44 MSK
Это чисто теоретический вопрос или практический?
Если практический, и если откуда-то сверху нет требования делать именно шелл-скриптами, рекомендую посмотреть в сторону чего-то более развитого, хотя бы питон/пхп, ибо шелл-скрипт с такой логикой ты даже если и напишешь то будет сложноподдерживаемым.
firkax ★★★★★
( 02.09.21 22:15:37 MSK )

Столько скриптов переписано, а этого не знаю, вернее, был уверен, что знаю, а оказалось вон оно как.
Это и есть главная проблема помойки под названием bash (и другие shеллов тоже касается по большей части). На этом невозможно нормально программировать, нет нормального синтаксиса, куча edge кейсов, старое легаси, да и язык построен так, чтобы интерпретатору было удобно, а не человеку
Использовать какие-то структуры данных на баше это боль, и как только они появляются в коде, проще сразу все переписать все на питон. Единственный плюс баша это возможность быстро строить пайплайны и вызывать экзешники, без всякой сторонней мишуры как в том же пайтоне.
Не, можно конечно постичь все тонкости, знать все подводные камни, но один вопрос: зачем на это тратить свое время?
Fizzika ★★
( 02.09.21 22:35:36 MSK )
Ответ на: комментарий от Fizzika 02.09.21 22:35:36 MSK

Использовать какие-то структуры данных на баше это боль, и как только они появляются в коде, проще сразу все переписать все на питон. Единственный плюс баша это возможность быстро строить пайплайны и вызывать экзешники, без всякой сторонней мишуры как в том же пайтоне.
И тут врывается xonsh:
def func(): a = sys.argv[1] git clone @(a)
Как проверить пустой ли массив в Javascript.

В Javascript очень часто приходиться работать с массивами. Одна из проверок, с которой приходится часто встречаться – это проверка на то пустой ли массив или в нем есть какие-то элементы.
Когда вы вручную создаете массив, то там эту проверку производить совершенно не обязательно, там сразу все очевидно.
Другое дело, когда массив формируется автоматически при выполнении каких-либо условий. Например, вы получаете данные из базы данных и нужно проверить нашлось ли что-либо при таких условиях, либо таких записей в базе данных нет.
Если ничего найдено не было, то будет возвращаться пустой массив. Эту ситуацию нужно отследить и делать соответствующие действия.
Давайте посмотрим на упрощенном примере, как это работает.
Итак, предположим, что у нас есть два массива с данными:
var dataFull = [3,5,7]; var dataEmpty = [];
dataFull – это массив, который содержит в себе элементы
dataEmpty – это пустой массив.
Задача в том, чтобы программно проверить пустой ли каждый из этих массивов или нет и вывести соответствующее сообщение.
Для проверки на то есть-ли какие-либо элементы в массиве, можно использовать свойство length.
data.length
Возвращаясь к задаче, которую мы поставили, решение может выглядеть вот так:
var dataFull = [3,5,7]; var dataEmpty = []; if (dataFull.length == 0)
Чтобы посмотреть, как это работает, можете перейти по следующей ссылке:
На этом все. Надеюсь, что в будущем с подобными проверками у вас больше возникать трудностей не будет.
Все мои уроки по Javascript здесь.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Проверить массив или первый элемент массива на пустоту?
Есть массив
int arr[10];
При вызове функции мне нужно сначала проверить, заносил ли туда пользователь значения через cin или нет.
Т.е проверить есть ли в массиве значения. Или он пустой.Как это сделать?
Сейчас при выводе цикла это показывает -858993460.
- Вопрос задан более трёх лет назад
- 4868 просмотров
Комментировать
Решения вопроса 2

Системный программист ^_^
Во-первых, нужно сначала задать массиву начальные значения. Например, забить нулями вот так:
int arr[10] = ;
Во-вторых, лучше завести отдельную переменную-флаг, в которой отмечать факт изменения массива пользователем.