2015-07-27 2 views
0

Когда я использую метод .length(), иногда я должен использовать скобки, а иногда и нет. Каково правило использования этого? Например:Java: Когда использовать скобки после метода

 int[] secArray = {1, 2, 3}; 
    System.out.println(secArray[2]); 
    System.out.println(secArray.length); 

Хотя здесь, я должен использовать: (capLetter это строка)

 System.out.println("Your name consists of " + capLetter.length() + " letters."); 

Я не мог найти какой-либо вопрос, ни ответ об этом. Я новичок в Java, извините, если вопрос нелепо. Заранее спасибо!

+9

'.length' не метод. Вы получаете доступ к свойству length массива (его поле). –

+0

Спасибо, что поняли! Приветствия. –

ответ

6

Это зависит от того, реализует ли объект длину как поле или метод.

Array.length - это поле.

String.length() является метод

List.size() является метод

В Java, вы увидите методы чаще полей. Массивы являются особым случаем, поскольку они являются частью основной Java.

1

частного Array() {}

Creates a new array with the specified component type and 
    length. 
* Invoking this method is equivalent to creating an array 
* as follows: 
* <blockquote> 
* <pre> 
**** int[] x = {length};*** 
* Array.newInstance(componentType, x); 
* </pre> 
* </blockquote> 
* 
* <p>The number of dimensions of the new array must not 
* exceed 255. 
* 
* @param componentType the {@code Class} object representing the 
* component type of the new array 
*** @param length the length of the new array** 

// ИНТ [] х = {длина} // @ длина пар длина нового массива но

длина() представляет собой метод

1
length() /*method*/  .length /*field*/ 

длина() является функция или метод, который возвращает длину объекта, - поле, которое также дает вам длину. Важно понимать разницу, потому что иногда вы столкнетесь с ситуациями, когда вам нужно определить длину объекта. В этом случае, если вы используете length(), вы можете получить сообщение об ошибке, требующее переменную, но если вы используете .length, она будет работать нормально.

Смежные вопросы