Como Capitalizar a Primeira Carta de uma string em Java

Payel Ganguly 12 outubro 2023
  1. Coloque a primeira letra de uma string em maiúscula usando o método upperCaseFirst()associado a toCharArray()
  2. Capitalizar a primeira letra de uma string utilizando toUpperCase() e appendTail() Métodos
  3. Capitalizar a primeira letra de uma string utilizando String.substring()
  4. Capitalizar a primeira letra de uma string utilizando String.substring() Método com função capitalize()
Como Capitalizar a Primeira Carta de uma string em Java

Este artigo tutorial apresentará como capitalizar a primeira letra de uma string usando Java. Há alguns métodos comuns que são utilizados para converter a primeira letra de um determinado valor de string em maiúscula. Os diferentes métodos são upperCaseFirst() juntamente com toCharArray(), toUpperCase() e appendTail() métodos, String.substring() método e capitalize() função juntamente com String.substring() método. Vamos discutir cada implementação de método através de exemplos.

Coloque a primeira letra de uma string em maiúscula usando o método upperCaseFirst()associado a toCharArray()

Neste processo, introduzimos o método upperCaseFirst()que recebe um valor string e o converte em um array de caracteres. Em seguida, utilizamos a classe Character e o método toUpperCase() para capitalizar o primeiro elemento na array de caracteres. Em conclusão, convertemos a array de caracteres atualizada em uma string utilizando o String Constructor. Vamos seguir o exemplo abaixo.

import java.io.*;
import java.lang.*;
import java.util.*;

public class Main {
  public static String upperCaseFirst(String val) {
    char[] arr = val.toCharArray();
    arr[0] = Character.toUpperCase(arr[0]);
    return new String(arr);
  }

  public static void main(String[] args) {
    String val1 = "java";
    String val2 = "advanced java";

    String output = upperCaseFirst(val1);
    System.out.println(val1);
    System.out.println(output);

    output = upperCaseFirst(val2);
    System.out.println(val2);
    System.out.println(output);
  }
}

Resultado:

java
Java
advanced java
Advanced java

Capitalizar a primeira letra de uma string utilizando toUpperCase() e appendTail() Métodos

Na saída, dois métodos diferentes são toUpperCase() e appendTail(). Para implementar estes 2 métodos em uma única aplicação, os pacotes regex.Matcher e regex.Pattern são importados. O exemplo abaixo explicará estes em detalhes.

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main {
  public static void main(String[] args) {
    String str = "hello world!";
    System.out.println(str);
    StringBuffer strbf = new StringBuffer();
    Matcher match = Pattern.compile("([a-z])([a-z]*)", Pattern.CASE_INSENSITIVE).matcher(str);
    while (match.find()) {
      match.appendReplacement(strbf, match.group(1).toUpperCase() + match.group(2).toLowerCase());
    }
    System.out.println(match.appendTail(strbf).toString());
  }
}

Resultado:

hello world!
Hello World!

Capitalizar a primeira letra de uma string utilizando String.substring()

O truque mais simples e fácil para capitalizar a primeira letra de uma determinada string é utilizar o método String.substring(). Vamos discutir no exemplo abaixo.

import java.util.*;

public class Main {
  public static void main(String[] args) {
    String str = "java";
    String firstLtr = str.substring(0, 1);
    String restLtrs = str.substring(1, str.length());

    firstLtr = firstLtr.toUpperCase();
    str = firstLtr + restLtrs;
    System.out.println("The modified string is: " + str);
  }
}

Resultado:

The modified string is: Java

No exemplo acima, criamos uma variável de string - str. Em seguida, formamos duas substrings de str, onde a firstLtr representa a primeira letra da string e a restLtrs representa as letras restantes da string. Na parte final, convertemos o firstLtr para maiúsculas utilizando o método toUpperCase() e unimos as duas substrings formando a própria string.

Capitalizar a primeira letra de uma string utilizando String.substring() Método com função capitalize()

Neste último exemplo, utilizaremos um capitalize() funcional para garantir que o determinado string tenha pelo menos um caracter antes de utilizar o método String.substring().

import java.util.*;

public class Main {
  public static String capitalize(String str) {
    if (str == null || str.isEmpty()) {
      return str;
    }
    return str.substring(0, 1).toUpperCase() + str.substring(1);
  }

  public static void main(String[] args) {
    String str = "hello world!";
    String firstLtr = str.substring(0, 1);
    String restLtrs = str.substring(1, str.length());

    firstLtr = firstLtr.toUpperCase();
    str = firstLtr + restLtrs;
    System.out.println("The modified string is: " + str);
  }
}

Resultado:

The modified string is: Hello world!

Artigo relacionado - Java String