¿Cómo poner en mayúscula la primera letra de una cadena en Java?

Resuelto sumithra asked hace 14 años • 0 respuestas

Estoy usando Java para obtener Stringinformación del usuario. Estoy intentando poner la primera letra de esta entrada en mayúscula.

Probé esto:

String name;

BufferedReader br = new InputStreamReader(System.in);

String s1 = name.charAt(0).toUppercase());

System.out.println(s1 + name.substring(1));

lo que llevó a estos errores del compilador:

  • El tipo no coincide: no se puede convertir de InputStreamReader a BufferedReader

  • No se puede invocar toUppercase() en el tipo primitivo char

sumithra avatar Oct 11 '10 15:10 sumithra
Aceptado
String str = "java";
String cap = str.substring(0, 1).toUpperCase() + str.substring(1);
// cap = "Java"

Con tu ejemplo:

public static void main(String[] args) throws IOException {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    // Actually use the Reader
    String name = br.readLine();
    // Don't mistake String object with a Character object
    String s1 = name.substring(0, 1).toUpperCase();
    String nameCapitalized = s1 + name.substring(1);
    System.out.println(nameCapitalized);
}
Rekin avatar Oct 11 '2010 08:10 Rekin

StringUtils.capitalize(..) de lengua común

Bozho avatar Oct 11 '2010 08:10 Bozho

El código de versión más corto/rápido para poner en mayúscula la primera letra de una cadena es:

String name  = "stackoverflow"; 
name = name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase();

el valor de namees"Stackoverflow"

Jorgesys avatar Nov 05 '2014 22:11 Jorgesys