// Definir cadenas
String nombre="Ana";
String departamento="marketing";
System.out.println(nombre+" "+ departamento);
nombre="Eva";
System.out.println(nombre+" "+ departamento);
// Estas tres cadenas valen lo mismo
String alumno1="Ana";
String alumno2=alumno1;
String alumno3="Ana";
Scanner sc=new Scanner(System.in);
String alumno4=sc.next();
if (alumno1==alumno2) {
System.out.println("Alumno 1 es igual al 2");
}
if (alumno1==alumno3) {
System.out.println("Alumno 1 es igual al 3");
}
if (alumno1==alumno4) {
System.out.println("Alumno 1 es igual al 4");
}
// Todo este rollo es para que enendáis que si quiero
// comprobar que dos cadenas son iguales
// Tengo que usar equals
if (alumno1.equals(alumno4)) {
System.out.println("Alumno 1 es igual al 4");
}
// en un tipo primitivo el nombre es una caja
// En la que meto el valor
int edad=5;
//En los que no son primitivos (casi todos)
// El nombre es una caja donde está la
// posición de memoria donde está el valor
String aula="Mates";
System.out.println("Dime tu ciudad");
String ciudad=sc.next();
// Comprobar si una cadena es igual a otra
// siempre uso equals
if (ciudad.equals("barcelona")) {
System.out.println("Eres de Barcelona");
}
// length es una de las muchas funciones
// de la clase string
System.out.println(ciudad.length());
// charAt(posicion) el caracter en esa posición
String referencia="ABCDE";
System.out.println(referencia.charAt(0)); // La A
// Esto me recorre todas las letras de la cadena
for (int i=0;i<referencia.length();i++) {
System.out.println(referencia.charAt(i));
}
System.out.println(referencia.charAt(referencia.length()-1));// Último caracter
for (int i=0;i<referencia.length();i++) {
System.out.println(referencia.charAt(referencia.length()-i-1));
}
// Obtener subcadenas de una cadena
// substring(int beginIndex, int endIndex)
for (int i=0;i<referencia.length();i++) {
System.out.println(referencia.substring(i));
}
for (int i=0;i<referencia.length();i++) {
System.out.println(referencia.substring(0,i+1));
}
// Buscar una cadena dentro de otra
// Si la encuentra nos devuelve la posición
// Si no la encuentra nos devuelve -1
String quijote="En un lugar de la mancha de cuyo nombre no quiero acordarme";
System.out.println(quijote.indexOf(" mancha")); // 18
System.out.println(quijote.indexOf("messi")); // -1 porque no lo ha encontrado
System.out.println(quijote.indexOf("de")); // 12
System.out.println(quijote.indexOf("de",13)); // 25
int pos1=quijote.indexOf("de"); //12
int pos2=quijote.indexOf("de", pos1+1); //25
// Me busca todas las apariciones de la cadena buscar
// Dentro de quijote
String buscar="de";
int pos=quijote.indexOf(buscar);
while(pos!=-1) {
System.out.println(pos);
pos=quijote.indexOf(buscar, pos+1);
}
// Reemplazar una cadena por otra
// replace(CharSequence target, CharSequence replacement)
String censura=quijote.replace("mancha", "###");
System.out.println(censura);
String noespacios=quijote.replace(" ", "");
System.out.println(noespacios);
// Convertir a mayúsculas y a minúsculas
// toUpperCase() y toLowerCase()
System.out.println(quijote.toUpperCase());
System.out.println(quijote.toLowerCase());
ciudad=" barcelona";
if (ciudad.trim().toLowerCase().equals("barcelona")) {
System.out.println("Eres de Barcelona");
}
if (ciudad.equalsIgnoreCase("barcelona")) {
System.out.println("Eres de Barcelona");
}
ciudad.endsWith("a"); //Acaba en la letra a
ciudad.startsWith("a"); // Empieza con a
ciudad.trim(); // Elimina los espacios del principio y del final