Obtenha o primeiro caractere de uma string em Java

Mohammad Irfan 12 outubro 2023
  1. Obtenha o primeiro caractere usando o método charAt() em Java
  2. Obtenha o primeiro caractere usando o método charAt() sem exceção em Java
  3. Obtenha o primeiro caractere usando o método String substring() em Java
  4. Obtenha o primeiro caractere usando o método substring() em Java
  5. Obtenha o primeiro caractere usando o método toCharArray() em Java
  6. Resumo
Obtenha o primeiro caractere de uma string em Java

Este tutorial apresenta como obter o primeiro caractere de uma string em Java. Também listamos alguns códigos de exemplo para ajudá-lo a entender o tópico.

Uma string é simplesmente uma coleção ou sequência de caracteres em Java. Strings podem ser usados ​​para vários fins, e podemos precisar acessar seus diferentes caracteres para manipulá-los.

Por exemplo, se temos um array de strings de primeiros nomes e queremos ter certeza de que o primeiro caractere de cada nome está em maiúscula, precisamos acessar o primeiro caractere de cada string.

Vamos aprender as diferentes maneiras de buscar o primeiro caractere de uma string.

Obtenha o primeiro caractere usando o método charAt() em Java

O método charAt() recebe um valor de índice inteiro como parâmetro e retorna o caractere presente nesse índice. O método da classe String e seu tipo de retorno são um valor char.

O programa abaixo mostra como usar este método para buscar o primeiro caractere de uma string. Sabemos que as strings seguem a indexação baseada em zero e o primeiro caractere está sempre presente no índice 0. Veja o exemplo abaixo.

public class Main {
  public static void main(String[] args) {
    String s = "demo";
    char firstCharacter = s.charAt(0);
    System.out.println("The String is: " + s);
    System.out.println("The first character of the String is: " + firstCharacter);
  }
}

Produção:

The String is: demo
The first character of the String is: d

Observe que o método charAt() lança uma IndexOutOfBoundsException com esta condição: se o parâmetro de índice for maior ou igual ao comprimento da string ou se for negativo. Essa exceção também é lançada se tentarmos obter o primeiro caractere de uma string vazia.

O código a seguir lançará esse erro porque a string está vazia.

public class Main {
  public static void main(String[] args) {
    String s = "";
    char firstCharacter = s.charAt(0);
    System.out.println("The first character of the String is: " + firstCharacter);
  }
}

Produção:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
	at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:48)
	at java.base/java.lang.String.charAt(String.java:712)
	at Main.main(Main.java:6)

Obtenha o primeiro caractere usando o método charAt() sem exceção em Java

Vamos escrever um método para imprimir o primeiro caractere da string usando o método charAt(). Este processo também verificará se a string está vazia para evitar a IndexOutOfBoundsException.

public class Main {
  public static Character getFirstCharacter(String s) {
    if (s == null || s.length() == 0)
      return null;
    else
      return (Character) s.charAt(0);
  }
  public static void main(String[] args) {
    String s = "demonstration";
    System.out.println("The string is: " + s);
    System.out.print("The first character of string is: " + getFirstCharacter(s));
  }
}

Produção:

The string is: demonstration
The first character of string is: d

Obtenha o primeiro caractere usando o método String substring() em Java

O método string substring() pode ser usado para extrair uma substring de outra string. A assinatura do método é mostrada abaixo; ele tem uma versão sobrecarregada.

public String substring(int startIdx) public String substring(int startIdx, int endIdx)

Se apenas passarmos o índice inicial, ele buscará uma substring a partir de startIdx ​​e incluirá todos os caracteres restantes. Se passarmos o endIdx, ele buscará a substring começando em startIdx ​​e terminando em endIdx (intervalo exclusivo).

Veja o exemplo abaixo.

public class Main {
  public static void main(String[] args) {
    String s = "demonstration";
    System.out.println("The string is: " + s);
    System.out.println("Substring starting from index 3: " + s.substring(3));
    System.out.println(
        "Substring starting from index 2 and ending at index 5: " + s.substring(2, 5));
  }
}

Produção:

The string is: demonstration
Substring starting from index 3: onstration
Substring starting from index 2 and ending at index 5: mon

Obtenha o primeiro caractere usando o método substring() em Java

Podemos passar o índice inicial como 0 e o índice final como 1 para buscar o primeiro caractere da string. Observe que o tipo de retorno desse método é uma String, portanto, mesmo o caractere único será retornado como uma String. Ele lançará uma StringIndexOutOfBoundsException se a string estiver vazia. Precisamos verificar essa condição antes de usar o método substring().

public class Main {
  public static String getFirstCharacter(String s) {
    if (s == null || s.length() == 0)
      return null;
    else
      return s.substring(0, 1);
  }
  public static void main(String[] args) {
    String s = "demonstration";
    System.out.println("The string is: " + s);
    System.out.print("The first character of string is: " + getFirstCharacter(s));
  }
}

Produção:

The string is: demonstration
The first character of string is: d

Obtenha o primeiro caractere usando o método toCharArray() em Java

Sabemos que podemos acessar os elementos de um array usando seu valor de índice. Se pudermos converter nossa string em um array do tipo de dados char, podemos facilmente buscar qualquer elemento usando seu índice.

Podemos obter o primeiro caractere por meio do índice 0. Usaremos o método toCharArray() para converter a string em um array de caracteres.

Um exemplo para obter o primeiro caractere do array usando toCharArray() é mostrado abaixo.

public class Main {
  public static Character getFirstCharacter(String s) {
    if (s == null || s.length() == 0)
      return null;
    else {
      char[] charArr = s.toCharArray();
      return charArr[0];
    }
  }
  public static void main(String[] args) {
    String s = "demonstration";
    System.out.println("The string is: " + s);
    System.out.print("The first character of string is: " + getFirstCharacter(s));
  }
}

Produção:

The string is: demonstration
The first character of string is: d

Resumo

Aqui, aprendemos como acessar o primeiro caractere de uma string. Podemos usar o método charAt() e passar o parâmetro do índice como 0 para buscar o primeiro caractere da string.

Também podemos usar o método substring() com o índice inicial como 0 e o índice final como 1 para obter o primeiro caractere como substring. O método toCharArray() também pode ser usado primeiro para converter a string em um array de caracteres e, em seguida, buscar o primeiro caractere usando o índice do array.

Artigo relacionado - Java String