2008-10-17 26 views

Respuesta

17

Es un int. Consulte Java Language Specification, sección 10.7.

+0

Realmente no puedo ver nada que prohíba el uso de un largo, por ejemplo en una plataforma donde eso es más eficiente. Simplemente no puedes indexarlo con algo más grande que un int. Sin embargo, es una discusión teórica en este momento. (Sí, vi el ejemplo, pero eso no es normativo). – extraneon

5

En Java Language spec, Arrays se puede ver en 10.4:

matrices deben ser indexados por los valores int; Los valores corto, byte o char también pueden usarse como valores de índice porque están sujetos a la promoción numérica única y se convierten en valores int. Un intento de acceder a un componente de matriz con un valor de índice largo da como resultado un error en tiempo de compilación.

No he podido encontrar el tipo del atributo de longitud, pero es al menos un int; y si es mucho tiempo, entonces no puede acceder a elementos más allá de la longitud entera máxima.

Así que supongo que es una int (final).

0

En JavaCard, los índices de matriz son cortos, pero JavaCard es impar. En todos lados, int como todo el mundo dice.

Cuestiones relacionadas