Я пришел из фона php и в php есть array_size()
функция, которая сообщает вам, сколько элементов в массиве используется.
Есть ли подобный метод для String[]
массива? Спасибо.
Я пришел из фона php и в php есть array_size()
функция, которая сообщает вам, сколько элементов в массиве используется.
Есть ли подобный метод для String[]
массива? Спасибо.
Ответы:
Да .length
(свойство, а не метод):
String[] array = new String[10];
int size = array.length;
array.length
На самом деле это последний элемент массива, а не метод.
Также, вероятно, полезно отметить, что если у вас есть многомерный массив, вы можете получить соответствующее измерение, просто добавив «[0]» к массиву, который запрашиваете, пока не достигнете соответствующей оси / кортежа / измерения.
Это, вероятно, лучше объяснить с помощью следующего кода:
public class Test {
public static void main(String[] args){
String[][] moo = new String[5][12];
System.out.println(moo.length); //Prints the size of the First Dimension in the array
System.out.println(moo[0].length);//Prints the size of the Second Dimension in the array
}
}
Который производит вывод:
5
12
Массивы являются объектами и имеют поле длины.
String [] haha = {"olle", "bulle"};
ха-ха. длина будет 2
В Java есть length
поле, которое вы можете использовать в любом массиве, чтобы узнать его размер:
String[] s = new String[10];
System.out.println(s.length);
Если вы хотите, чтобы функция сделала это
Object array = new String[10];
int size = Array.getlength(array);
Это может быть полезно, если вы не знаете, какой у вас массив, например, int [], byte [] или Object [].
Ответ: «Все они». Массив Java выделяется с фиксированным количеством слотов элементов. Атрибут "длина" скажет вам, сколько. Это число является неизменным для жизни массива. Для эквивалента с изменяемым размером вам нужен один из классов java.util.List, где вы можете использовать метод size (), чтобы узнать, сколько элементов используется.
Однако есть «Используется», а затем « Используется» . В массиве объектов класса вы можете иметь слоты элементов, элементы которых являются нулевыми объектами, поэтому, даже если они учитываются в атрибуте длины, но определения большинства людей не используются (YMMV, в зависимости от приложения). Нет встроенной функции для возврата нулевых / ненулевых значений.
Объекты списка имеют еще одно определение «В использовании». Чтобы избежать чрезмерного создания / уничтожения базовых структур хранения, в этих классах обычно есть некоторые отступы. Он используется внутри, но не учитывается в возвращаемом методе size (). И если вы попытаетесь получить доступ к этим элементам без расширения списка (с помощью методов добавления), вы получите недопустимое исключение индекса.
Таким образом, для списков вы можете использовать «Используется» для ненулевых, зафиксированных элементов, всех зафиксированных элементов (включая нулевые элементы) или всех элементов, включая пространство расширения, выделенное в настоящее время.
Все приведенные выше ответы являются правильными. Важно отметить, что массивы имеют атрибут длины, но не метод длины. Всякий раз, когда вы используете строки и массивы в Java, вы можете столкнуться с тремя основными моделями:
Не совсем ответ на ваш вопрос, но если вы хотите иметь что-то вроде массива, который может увеличиваться и уменьшаться, вы не должны использовать массив в Java. Вы, вероятно, лучше всего используете ArrayList или другую реализацию List.
Затем вы можете вызвать size (), чтобы получить его размер.