How do I know the length of a string?

To get the length of a String object we can use the String.length() method. This method returns the string length as an int value. The length of the string is equals to the length of the sequence of characters represented by this string object, and it is equals to the number of 16-bit Unicode characters in the string.

The following code snippet shows how to use the length() method. We create a string object name and assign a text to it. Call the method and store the length returned to the length variable and print it out. We can also use the length() method to check if the string is empty by checking if the length is equals to zero.

package org.kodejava.lang;

public class StringLengthExample {
    public static void main(String[] args) {
        String name = "Kode Java - Learn Java by Examples";

        // Get the length of the string specified by the name
        // variable.
        int length = name.length();
        System.out.println("Length = " + length);

        // Set name to an empty string and test if it is empty.
        name = "";
        length = name.length();
        if (length == 0) {
            System.out.println("The string is empty!");
        }
    }
}

If you run this code you will get the following output:

Length = 34
The string is empty!

How do I check string for equality?

To compare strings for their content equality we must use the String.equals() method. This method ensures that it will compare the content of both string instead of the object reference of the both string. This method returns true if both string in comparison have the same content.

Do not, never, use the == operator to compare string for its content. The == operator check for object reference equality, it returns true only if both objects point to the same reference. This operator returns false if the object doesn’t point to the same references.

package org.kodejava.lang;

public class StringEquals {
    public static void main(String[] args) {
        String s1 = "Hello World";
        String s2 = new String("Hello World");

        // This is good!
        if (s1.equals(s2)) {
            System.out.println("1. Both strings are equals.");
        } else {
            System.out.println("1. Both strings are not equals.");
        }

        // This is bad!
        if (s1 == s2) {
            System.out.println("2. Both strings are equals.");
        } else {
            System.out.println("2. Both strings are not equals.");
        }
    }
}

In the example above we deliberately create an instance of s2 string using the new operator to make sure that we have a different object reference. When you run the program it will give you the following result:

1. Both strings are equals.
2. Both strings are not equals.

How do I check if a string contains a specific word?

In this code example we are going to learn how to find a specific word or text inside a string. For this example we will utilize the java.lang.String class. The String class provides a method called String.indexOf(). It takes an argument of a String, which is the sub string that we want to find in the other string. You can imagine the sub string as a needle that we are going to find in the haystack.

If the word found more than once in the string, the indexOf() method returns the first index of a sub string found in the specified string. If the sub string can’t be found this method returns -1. The index of string returns by this method begin at zero. It means that the first letter in the string have the index number 0.

Another way that we can use is the String.contains() method. This method introduced in JDK 1.5. The method simply return a boolean value which is true or false indicating whether the string in search is found in the haystack. Let’s see the snippet below:

package org.kodejava.lang;

public class StringContainsExample {
    public static void main(String[] args) {
        String haystack = "Kodejava - Learn Java by Examples";

        // Checks to see if the word "Java" is found in the haystack
        // variable.
        String needle = "Java";
        if (haystack.indexOf(needle) != -1) {
            System.out.println("Found the word " + needle +
                    " at index number " + haystack.indexOf(needle));
        } else {
            System.out.println("Can't find " + needle);
        }

        // Or use the String.contains() method if you are not interested
        // with the index of the word.
        if (haystack.contains(needle)) {
            System.out.println("Eureka we've found Java!");
        }
    }
}

Running the example gave you the following result:

Found the word Java at index number 17
Eureka we've found Java!

How do I know if a character is uppercase?

In the previous example How do I know if a character is lowercase?, we’ve learned how to use the Character.isLowerCase() method. Now we will learn how to use the other method, which is the Character.isUpperCase() to determine if a letter is in an uppercase form. This method also return a boolean value that indicates whether the character is in uppercase form or not.

But first things first. Before you dive into the learning, make sure all other matters are taken care of, as learning to code will require your absolute dedication. If you are a student, you can use essay writing services to outsource some of your assignments. If you work full-time, consider taking a few days off. This way, you will get a clearer mind and more energy for studying.

Another way to check if a letter is in uppercase form is by comparing the type of the characters, that can be obtained using the Character.getType() method with a defined constant value Character.UPPERCASE_LETTER.

Below is the code snippet that demonstrate these methods.

package org.kodejava.example.lang;

public class CharacterIsUpperCaseExample {
    public static void main(String[] args) {
        char a = 'A';

        // Checks to see if a letter is a uppercase letter.
        if (Character.isUpperCase(a)) {
            System.out.println(a + " is an uppercase character.");
        }

        // Checks to see if a letter is an uppercase letter
        // by comparing the character type against
        // Character.UPPERCASE_LETTER constant value.
        int charType = Character.getType(a);
        if (charType == Character.UPPERCASE_LETTER) {
            System.out.println(a + " is an uppercase character.");
        }
    }
}

The above example give you the following result when it executed:

A is an uppercase character.
A is an uppercase character.

How do I know if a character is lowercase?

In this example you are going to learn another example on using the java.lang.Character class. The Character.isLowerCase() method can be used to determine if a letter is a lowercase letter. This method takes a char as argument and return a boolean value. If it returns true it means the character is in lowercase form. And if it returns false it means the character is not in lowercase form.

Beside using the isLowerCase() method you can also compare the character type with the constant value of Character.LOWERCASE_LETTER. To get the character type you can use the Character.getType() method. You can see the example on the following code snippet.

package org.kodejava.lang;

public class CharacterIsLowerCaseExample {
    public static void main(String[] args) {
        char a = 'a';

        // Checks to see if a letter is a lowercase letter.
        if (Character.isLowerCase(a)) {
            System.out.println(a + " is a lowercase letter.");
        }

        // Checks to see if a letter is a lowercase letter
        // by comparing the character type against
        // Character.LOWERCASE_LETTER constant value.
        int charType = Character.getType(a);
        if (charType == Character.LOWERCASE_LETTER) {
            System.out.println(a + " is a lowercase letter.");
        }
    }
}

This example give you the following output:

a is a lowercase letter.
a is a lowercase letter.

How do I check if a character representing an alphabet?

In the previous example you’ve learned how to use the Character.isDigit() method to check if a character representing a digit.

In this example you will learn how to check if a character representing a letter. You can use the Character.isLetter(char c) method to check if a character is a valid letter. This method will return a true value for a valid letter characters and false if the character is not a valid letter.

In the code snippet below you will also learn how to use the toCharArray() method to covert a string into an array of char. Here we use the method so that we can check every character in the for-each loop to see is the character is a letter or not.

package org.kodejava.lang;

public class CharacterIsLetterExample {
    public static void main(String[] args) {
        String name = "Kode Java 123";

        // Determines if the specified character is a letter
        if (Character.isLetter(name.charAt(5))) {
            System.out.println("The fifth character (" +
                    name.charAt(5) + ") is an alphabet!");
        }

        // Iterates all characters in the string to see if it is
        // a letter or not.
        for (char c : name.toCharArray()) {
            if (Character.isLetter(c)) {
                System.out.println(c + " is a letter.");
            } else {
                System.out.println(c + " not a letter.");
            }
        }
    }
}

The code will print the following output:

The fifth character (J) is an alphabet!
K is a letter.
o is a letter.
d is a letter.
e is a letter.
  not a letter.
J is a letter.
a is a letter.
v is a letter.
a is a letter.
  not a letter.
1 not a letter.
2 not a letter.
3 not a letter.

How do I check if a character representing a number?

For validation purposes we might need to check if data entered by our users is a valid data for our application to process. A simple mechanism for checking if a character inputted is a digit or not can be done by using the java.lang.Character class isDigit(char c) method.

In this example you will learn how to check if a character representing a number. You will start by creating a string that contains some random alphanumeric characters in it. And then you are going to iterate these characters, get the value at the specific location using the charAt() method. In the last section you are going to check to if the character represent a digit or not.

package org.kodejava.lang;

public class CharacterIsDigitExample {
    public static void main(String[] args) {
        // Manually creates a string with randoms characters.
        String str = "12?XYZ4!6cba78+HI@0";

        for (int i = 0; i < str.length(); i++) {
            // Determines if the specified character is a digit
            if (Character.isDigit(str.charAt(i))) {
                System.out.println(str.charAt(i) + " is a digit.");
            } else {
                System.out.println(str.charAt(i) + " not a digit.");
            }
        }
    }
}

These are the outputs of our program:

1 is a digit.
2 is a digit.
? not a digit.
X not a digit.
Y not a digit.
Z not a digit.
4 is a digit.
! not a digit.
6 is a digit.
c not a digit.
b not a digit.
a not a digit.
7 is a digit.
8 is a digit.
+ not a digit.
H not a digit.
I not a digit.
@ not a digit.
0 is a digit.

If there is a specific topic that picked your interest, you can turn to essay helper service (a professional writing service). It is a great alternative to classic googling. The experienced professionals will conduct extensive research on the topic for you and even write an essay if you need one.

How do I know if an ArrayList contains a specified item?

In this example we are going to learn how to find out if an ArrayList object contains the specified element. To check if an ArrayList object contains the specified element we can use the contains(Object o) method. This method returns a boolean true when the specified element is found in the ArrayList, otherwise return false. The method returns true if and only if the list contains at least one element, where the element equals to the item in the list.

Let’s see the code snippet below to demonstrate it.

package org.kodejava.util;

import java.util.ArrayList;
import java.util.List;

public class ArrayListContainsExample {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("Item 1");
        list.add("Item 2");
        list.add("Item 3");
        list.add("Item 4");

        // Check to see if the list contains "Item 1".
        String itemToFind = "Item 1";
        System.out.println("contains(" + itemToFind + "): " + list.contains(itemToFind));

        // Check to see if the list contains "Item 20".
        itemToFind = "Item 20";
        System.out.println("contains(" + itemToFind + "): " + list.contains(itemToFind));
    }
}

The output of the code snippet above are:

contains(Item 1): true
contains(Item 20): false

How do I know the size of ArrayList?

In this example we are going to learn how to obtain the size of an ArrayList object. As you might already know, a java.util.ArrayList is a class that we can use to create a dynamic sized array. We can add and remove elements from the ArrayList dynamically.

Because its elements can be added or removed at anytime, we might want to know the number of elements currently stored in this list. To obtain the size we can use the size() method. This method returns an int value that tells us the number of elements stored in the ArrayList object.

When the list contains more than Integer.MAX_VALUE elements this method returns Integer.MAX_VALUE.

package org.kodejava.util;

import java.util.ArrayList;
import java.util.List;

public class ArrayListSize {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("Item 1");
        list.add("Item 2");
        list.add("Item 3");

        int size = list.size();
        System.out.println("List size = " + size);
    }
}

In the code snippet above we start creating an instance of ArrayList that can holds String values. As a good practice we should always use the interface as the type of the declared object, in this case we use the List interface. The <> is a diamond operator, started from JDK 7 you can use this operator so that you don’t need to repeat the generic type twice between the declaration and instantiation.

After we create the ArrayList object and add string elements to the list object, we get the size of the list by calling the size() method. We store the result in the size variable and print out its value. If you compile and run the code above you will get the following output:

List size = 3

How do I use ArrayList class?

In this example we will learn how to use the java.util.ArrayList class. An ArrayList is part of the Java Collection Framework. By using this class we can create a dynamic size array of data, which means we can add or remove elements from the array dynamically.

In the code below we will see the demonstration on how to create an instance of ArrayList, add some elements, remove elements and iterate through the entire ArrayList elements either using a for-loop or using the for-each syntax.

We can also see how to convert the ArrayList into an array object using the toArray() method. And we use the Arrays.toString() utility method when we want to print the content of an array.

When creating a class instance it is a good practice to use the interface as the type of variable instead of the concrete type directly. This can make us easily update our code if we don’t want to use ArrayList in the future.

And here is the code snippet:

package org.kodejava.util;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class ArrayListExample {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();

        // Add items into ArrayList
        list.add("Item 1");
        list.add("Item 2");
        list.add("Item 3");

        // Remove the third item from ArrayList, first index = 0
        list.remove(2);

        // Iterate ArrayList item using for loop statement
        for (int i = 0; i < list.size(); i++) {
            String item = list.get(i);
            System.out.println("Item = " + item);
        }

        // Iterate ArrayList item using enhanced for statement
        for (String item : list) {
            System.out.println("Item = " + item);
        }

        // Iterate ArrayList item using forEach
        list.stream().map(item -> "Item = " + item).forEach(System.out::println);

        // Convert ArrayList into array of object
        String[] array = list.toArray(new String[0]);
        System.out.println("Items = " + Arrays.toString(array));
    }
}

Executing the program will give us the following output printed in our console.

Item = Item 1
Item = Item 2
Item = Item 1
Item = Item 2
Item = Item 1
Item = Item 2
Items = [Item 1, Item 2]