Каков тип данных для свойства length для Java-массивов?

StackOverflow https://stackoverflow.com/questions/211311

  •  03-07-2019
  •  | 
  •  

Вопрос

Я хочу выяснить, является ли свойство length для Java-массивов значением int / long или чем-то еще.

Это было полезно?

Решение

Это значение int.Посмотрите на Спецификация языка Java, раздел 10.7.

Другие советы

В Спецификация языка Java, Массивы вы можете увидеть в разделе 10.4:

Массивы должны быть проиндексированы значениями int;значения short, byte или char также могут использоваться в качестве индексных значений, поскольку они подвергаются унарному числовому продвижению и становятся значениями int.Попытка получить доступ к компоненту массива с длинным значением индекса приводит к ошибке времени компиляции.

Я не смог найти тип атрибута length, но это, по крайней мере, int;и если он длинный, то вы не сможете получить доступ к элементам, выходящим за пределы максимальной целочисленной длины.

Так что я предполагаю, что это (окончательный) результат.

В соответствии с спецификация, это int

Тип данных следующий инт, совсем недолго.То же, что и индекс.

Видишь http://java.sun.com/docs/books/jls/second_edition/html/arrays.doc.html, 10.4

В JavaCard индексы массива являются короткими, но JavaCard такой странный.Везде в остальном, как говорят все остальные.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top