length vs length() in Java

array.length : length is a final variable applicable for arrays. With the help of length variable, we can obtain the size of the array.
string.length() : length() method is a final variable which is applicable for string objects. length() method returns the number of characters presents in the string.

length vs length()

  1. The length variable is applicable to array but not for string objects whereas the length() method is applicable for string objects but not for arrays.
  2. Examples:
    // length can be used for int[], double[], String[] 
    // to know the length of the arrays.
    
    // length() can be used for String, StringBuilder, etc 
    // String class related Objects to know the length of the String
  3. To directly accesses a field member of array we can use .length; whereas .length() invokes a method to access a field member.

Example:



filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to illustrate the
// concept of length
// and length()
public class Test {
public static void main(String[] args)
    {
        // Here array is the array name of int type
        int[] array = new int[4];
        System.out.println("The size of the array is " + array.length);
  
        // Here str is a string object
        String str = "GeeksforGeeks";
        System.out.println("The size of the String is " + str.length());
    }
}

chevron_right


Output:

The size of the array is 4
The size of the String is 13

Practice Questions based on the concept of length vs length()

Lets have a look on the output of the following programs?

  1. What will be the output of following program?
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class Test {
    public static void main(String[] args)
        {
            // Here str is the array name of String type.
            String[] str = { "GEEKS", "FOR", "GEEKS" };
            System.out.println(str.length);
        }
    }

    chevron_right

    
    

    Output:

    3
    

    Explanation: Here the str is an array of type string and that’s why str.length is used to find its length.

  2. What will be the output of following program?
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class Test {
    public static void main(String[] args)
        {
            // Here str[0] pointing to a string i.e. GEEKS
            String[] str = { "GEEKS", "FOR", "GEEKS" };
            System.out.println(str[0].length);
        }
    }

    chevron_right

    
    

    Output:

    error: cannot find symbol
    symbol: method length()
    location: variable str of type String[]
    

    Explanation: Here the str is an array of type string and that’s why str.length() CANNOT be used to find its length.

  3. What will be the output of following program?
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    public class Test {
    public static void main(String[] args)
        {
            // Here str[0] pointing to String i.e. GEEKS
            String[] str = { "GEEKS", "FOR", "GEEKS" };
            System.out.println(str[0].length());
        }
    }

    chevron_right

    
    

    Output:

    5

    Explanation: Here str[0] pointing to String i.e. GEEKS and thus can be accessed using .length()

This article is contributed by Bishal Kumar Dubey. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.



My Personal Notes arrow_drop_up