The thing you wrote as char[]
is an Object, an array, and has a public final field called length
. It is calculated once when the array in created. Like all objects it also has a toString(), notify()
, etc...
How does Java calculate length of primitive array? [duplicate]
-
10-06-2023 - |
سؤال
Code:
char[] chars = "abcd".toCharArray();
System.out.println(chars.length);
Question: How is length calculate by Java here? Since char is not a Class, I am not sure where length is stored. If it isn't stored, is it calculated every time you do chars.length? (I presume not)
المحلول
نصائح أخرى
http://docs.oracle.com/javase/specs/jls/se7/html/jls-10.html#jls-10.7
The public final field length, which contains the number of components of the array. length may be positive or zero.
In this case chars.length
is returning the number of elements in the array.
Or am I missing the question?
Even though char
is not a Class/Object type in Java, an array of char
actually is. And the length is a (final) field of that class. See the answer here for more.
لا تنتمي إلى StackOverflow