Cómo poner en mayúsculas la primera letra de una cadena en Java

Payel Ganguly 12 octubre 2023
  1. Poner en mayúsculas la primera letra de una cadena usando upperCaseFirst() asociado con el método toCharArray()
  2. Poner en mayúsculas la primera letra de una cadena usando los métodos toUpperCase() y appendTail()
  3. Poner en mayúsculas la primera letra de una cadena usando String.substring()
  4. Poner en mayúsculas la primera letra de una cadena usando el método String.substring() con la función capitalize()
Cómo poner en mayúsculas la primera letra de una cadena en Java

Este artículo del tutorial introducirá cómo poner en mayúsculas la primera letra de una cadena usando Java. Hay algunos métodos comunes que se utilizan para convertir la primera letra de una determinada “cadena” en mayúsculas. Los diferentes métodos son upperCaseFirst() junto con los métodos toCharArray(), toUpperCase() y appendTail(), el método String.substring() y la función capitalize() junto con el método String.substring(). Discutamos las implementaciones de cada método a través de ejemplos.

Poner en mayúsculas la primera letra de una cadena usando upperCaseFirst() asociado con el método toCharArray()

En este proceso, introducimos el método upperCaseFirst() que recibe un valor string y lo convierte en un array de caracteres. Luego, usamos la clase Character y el método toUpperCase() para poner en mayúsculas el primer elemento del array de caracteres. En conclusión, convertimos el array de caracteres actualizada en una cadena usando el Constructor de cadenas. Sigamos el siguiente ejemplo.

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

Poner en mayúsculas la primera letra de una cadena usando los métodos toUpperCase() y appendTail()

En la salida, entran en escena 2 métodos diferentes que son toUpperCase() y appendTail(). Para implementar estos 2 métodos dentro de una sola aplicación, se importan los paquetes regex.Matcher y regex.Pattern. El siguiente ejemplo lo explicará en detalle.

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!

Poner en mayúsculas la primera letra de una cadena usando String.substring()

El truco más simple y fácil para poner en mayúsculas la primera letra de una cadena dada es usar el método String.substring(). Veamos el siguiente ejemplo.

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

En el ejemplo anterior, creamos una variable de cadena - str. Luego formamos dos subsecuencias de str, donde firstLtr representa la primera letra de la cadena y restLtrs representa las letras restantes de la cadena. En la parte final, convertimos la primeraLtr a mayúsculas usando el método toUpperCase() y unimos las dos subcadenas formando la string misma.

Poner en mayúsculas la primera letra de una cadena usando el método String.substring() con la función capitalize()

En este último ejemplo, usaremos una capitalize() funcional para asegurarnos de que la cadena dada tiene al menos un carácter antes de usar el 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!

Artículo relacionado - Java String