length vs length() in Java - GeeksforGeeks

04 Aug, 2021
array.length: length is a final variable applicable for arrays. With the help of the length variable, we can obtain the size of the array. 
string.length() : length() method is a final variable which is applicable for string objects. The length() method returns the number of characters present in the string. 
length vs length()
1. The length variable is applicable to an 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 access a field member of an array we can use .length; whereas .length() invokes a method to access a field member.
Example:  
JAVA
// 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());    }}
The size of the array is 4
The size of the String is 13
Practice Questions based on the concept of length vs length()
Let’s have a look at the output of the following programs:
What will be the output of the following program?
JAVA
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);    }}
3
Explanation: Here the str is an array of type string and that’s why str.length is used to find its length.  
What will be the output of the following program?  
JAVA
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.length());    }}
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.  
What will be the output of the following program?
JAVA
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());    }}
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 write.geeksforgeeks.org or mail your article to review-team@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. 
usaraswat82
agiledanish
musamaali45
Java-Arrays
Java-String-Programs
Java-Strings
Java
Java-Strings
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Object Oriented Programming (OOPs) Concept in Java
HashMap in Java with Examples
Stream In Java
Interfaces in Java
How to iterate any Map in Java
ArrayList in Java
Initialize an ArrayList in Java
Stack Class in Java
Multidimensional Arrays in Java
Singleton Class in Java