Métodos de String

Hola a todos, hoy os explicare los método mas utilizado de la clase String.

La clase String tiene varios métodos muy útiles como saber su longitud, trocear la cadena, etc. Recuerda que para invocar un método debemos escribir el nombre del String, un punto y el nombre del método, más sus parámetros. Es importante que si necesitas almacenar el valor devuelto, uses una variable para ello. Por ejemplo:

String cadena=»americano»;

boolean empiezaPor=cadena.startWith («a»);

Estos son los métodos mas conocidos:

MétodoDescripciónParámetroTipo de dato devuelto
charAtDevuelve el carácter indicado por parámetroUn parámetro intchar
compareToSirve para comparar cadenas, devuelve un número según el resultado. Recuerda que no sigue el alfabeto español, lo compara según la tabla ASCII.Un parámetro String, la cadena a comparar.int

- Si devuelve un número mayor que 0: la primera cadena es mayor que la segunda.

- Si devuelve un 0: las cadenas son iguales.

- Si devuelve un número menor que 0: la primera cadena es menor que la segunda

compareToIgnoreCaseEs igual que el anterior, pero ignorando mayúsculas o minúsculas.Un parámetro String, la cadena a compararint

- Si devuelve un número mayor que 0: la primera cadena es mayor que la segunda.

- Si devuelve un 0: las cadenas son iguales.

- Si devuelve un número menor que 0: la primera cadena es menor que la segunda

concatConcatena dos cadenas, es como el operador +.Un parámetro String, la cadena a concatenarUn nuevo String con las cadenas concatenadas.
copyValueOfCrea un nuevo String a partir de un array de char. Este método debe invocarse de manera estática, es decir, String.copyValueOf(array_char)Un array de charString
endsWithIndica si la cadena acaba con el String pasado por parámetro.Stringboolean
equalsIndica si una cadena es igual que otra.Stringboolean
equalsIgnoreCaseEs igual que el anterior, pero ignorando mayúsculas o minúsculas.Stringboolean
getBytesDevuelve un array de bytes con el código ASCII de los caracteres que forman el String.Ningún parámetroUn array de bytes
indexOfDevuelve la posición en la cadena pasada por parámetro desde el principio. -1 si no existe.String o charint
indexOfIgual que el anterior, pero ademas le indicamos la posición desde donde empezamos a buscar.String o char, el segundo parámetro es un int int
lastIndexOfDevuelve la posición en la cadena pasada por parámetro desde el final. -1 si no existe.String o charint
lastIndexOfIgual que el anterior, pero ademas le indicamos la posición desde donde empezamos a buscar.String o char, el segundo parámetro es un int int
lenghtDevuelve la longitud de la cadena.Ningún parámetroint
matchesIndica si la cadena cumple con la expresión pasada como parámetro. Pincha aquí para tener mas detalles.Stringboolean
replaceDevuelve un String cambiando los caracteres que nosotros le indiquemos.Dos parámetros char, el primero es el carácter que existe en el String y el segundo por el que queremos cambiar. String
replaceFirstDevuelve un String intercambiando solo la primera coincidencia.Dos parametros String, el primero son los caracteres que existe en el String y el segundo por el que queremos cambiar. String
replaceAllDevuelve un String intercambiando todas las coincidencias que se encuentren.Dos parametros String, el primero son los caracteres que existe en el String y el segundo por el que queremos cambiar.String
startsWithIndica si la cadena empieza por una cadena pasada por parámetro.Stringboolean
substringTrocea un String desde una posición a otra.Dos parámetros int, indica desde donde empieza hasta donde acaba, este ultimo no se incluye.String
toCharArrayDevuelve en un array de char, todos los caracteres de una String.Ningún parámetroUn array de char
toLowerCaseConvierte el String a minúsculas.Ningún parámetroString
toUpperCaseConvierte el String a mayúsculas.Ningún parámetroString
trimElimina los espacios del String.Ningún parámetroString
valueOfTransforma una variable primitiva en un String. Para invocarse debe usarse con String. Por ejemplo, String.valueOf(variable)Un parámetro, que puede ser un:

  • boolean

  • char

  • double

  • int

  • float

  • long

  • Array de char

  • Referencia a un objeto
String
public class PruebaApp {

	public static void main(String[] args) {

		String cadena="El que se fue a Sevilla perdio su silla y el que se fue al Torreon, su sillon";

                System.out.println(cadena.charAt(0)); // Nos devolvera E

                System.out.println(cadena.charAt(11)); //Nos devolvera u

                System.out.println(cadena.endsWith("n")); //Nos devuelve true

                System.out.println(cadena.startsWith("e")); //Nos devuelve false, Java distingue entre mayusculas y minusculas

                System.out.println(cadena.equals("El que se fue a Sevilla perdio su silla y el que se fue al Torreon, su sillon")); //Nos devuelve true

                byte[] array_bytes=cadena.getBytes(); //Creamos un array de bytes e insertamos la devolucion del metodo

                System.out.println("Codigo ASCII de cada caracter");

                for (int i=0;i<array_bytes.length;i++){
                    System.out.print(array_bytes[i]+" "); //Muestra los codigos
                }
                System.out.println("");
                System.out.println(cadena.indexOf("fue")); //localiza la posicion donde se encuentra "fue"

                System.out.println(cadena.length()); // Nos devuelve la longitud: 77

                System.out.println(cadena.replace('a', 'e')); // Cambia todas las a por e

                System.out.println(cadena.toLowerCase()); //Transforma el String a minusculas

                System.out.println(cadena.toUpperCase()); //Transforma el String a mayusculas

	}

}

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

10 comentarios

  1. juan jose gutierrez

    por favor necesito crear un recivo de la luz en java que contenga al menos 10 usuarios en donde salga con nombre y cedula y que ademas se pueda adicional modificar borrar buscar (y toca trabajarlo con metodos y matrices )grasias por la ayuda

  2. Pablo

    Muy buenas, un pequeño comentario:
    Al igual que el método startsWith, para saber si la cadena termina con el string pasado como parámetro es con endsWith, en la tabla falta una s.
    Un saludo.

  3. Disco Duro de Roer Post author

    Gracias por la correción!!

  4. Anthony

    muy buenas, una pregunta como le hago para que al solicitar un caracter empiece desde 1 y no de 0 de tal forma que al pedirle el cracte numero 2 de la palabra «Hola» me de la «O» y no la «L»

  5. anónimo

    //Qué tal, me pueden ayudar con este ejercicio, necesito crear un método que imprima carácteres pares de la cadena texto.
    Saludos.

    public class EjerMiClase {

    String texto= «»;

    public Miclase(){
    texto = «Hola y Bienvenido…»;

    }

    public void imprimeCaracteres(){
    // — //
    }

    }

  6. anonymous

    Hola,
    A ver si podéis ayudarme con este ejercicio:

    Escribe una aplicación que pida una palabra y un entero n no negativo y devuelva n copias de
    la palabra original.

    Llevo horas dándole vueltas y mirando como podría hacerlo, pero no doy con la solución.

    Gracias de antemano!

  7. Adriel Chi

    Tengo programas por si necesitan alguno, igual mucha porno

  8. gerardo

    Hola buen dia,

    hay un pequeno detalle en el ejemplo, te comento

    donde dice :

    System.out.println(cadena.indexOf(«fue»)); //localiza la posicion donde se encuentra «la»

    debería ser:

    System.out.println(cadena.indexOf(«fue»)); //localiza la posicion donde se encuentra «fue»

    Saludos muchas gracias por el materia muy bueno!!..

  9. Disco Duro de Roer Post author

    Resuelto, ¡gracias!

  10. Char

    La solución básica seria :

    Scanner sc = new Scanner(System.in);
    System.out.print(«introduce una palabra: «);
    String palabra = sc.nextLine();
    System.out.print(«Introduce un numero n para repetir la palabra: «);
    int num = 0;

    do {
    num = sc.nextInt();
    if(num <= 0){
    System.out.print("No se acepta numeros negativos e igual a 0… ");
    }
    } while (num <= 0);

    for(int i = 1; i <= num; i++){
    System.out.println(i + ": " + palabra);
    }

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *