Solución propuesta para el ejercicio CU00665B del tutorial básico de programación Java de aprenderaprogramar.
package com.aprenderaprogramar;
import java.util.ArrayList;
public class ListaCantantesFamosos {
private String nombreUsuario;
private ArrayList<String> listaCantantes;
public ListaCantantesFamosos(String pUsuario) {
setNombreUsuario(pUsuario);
listaCantantes = new ArrayList<String>();
}
public String getNombreUsuario() {
return nombreUsuario;
}
public void setNombreUsuario(String nombreUsuario) {
this.nombreUsuario = nombreUsuario;
}
public void addCantante(String pCantante) {
listaCantantes.add(pCantante);
}
public String getCantante(int pos) {
return(listaCantantes.get(pos));
}
public int getsize() {
return listaCantantes.size();
}
}
package com.aprenderaprogramar;
public class TestListaCantantesFamosos {
public static void main(String[] args) {
System.out.println("Por favor introduzca cantante 1:");
CadenaEntrada cantante1 = new CadenaEntrada();
System.out.println("Por favor introduzca cantante 2:");
CadenaEntrada cantante2 = new CadenaEntrada();
System.out.println("Por favor introduzca el usuario que crea la lista:");
CadenaEntrada usuario = new CadenaEntrada();
// entrada
ListaCantantesFamosos miLista = new ListaCantantesFamosos(usuario.getEntrada());
miLista.addCantante(cantante1.getEntrada());
miLista.addCantante(cantante2.getEntrada());
// Salida
System.out.println("La lista de cantantes creada por: " + miLista.getNombreUsuario() + " Tiene "
+ miLista.getsize() + " elementos");
System.out.println("Elemento 1 " + miLista.getCantante(0));
System.out.println("Elemento 2 " + miLista.getCantante(1));
}
}
package com.aprenderaprogramar;
import java.util.Scanner;
public class CadenaEntrada {
private String entrada;
public static void main(String[] args) {
System.out.println("Ingrese primera palabra");
CadenaEntrada entrada1 = new CadenaEntrada();
System.out.println("Ingrese segunda palabra");
CadenaEntrada entrada2 = new CadenaEntrada();
Comparacion(entrada1.getEntrada(), entrada2.getEntrada());
}
public CadenaEntrada() {
pedirEntrada();
}
public void pedirEntrada() {
Scanner entradaTeclado1 = new Scanner(System.in);
setEntrada(entradaTeclado1.nextLine());
}
public static void Comparacion(String pEntrada1, String pEntrada2) {
int maxI, minI, numEntrada, i = 0;
if (pEntrada1.length() > pEntrada2.length()) {
maxI = pEntrada1.length();
minI = pEntrada2.length();
numEntrada = 2;
} else {
maxI = pEntrada2.length();
minI = pEntrada1.length();
numEntrada = 1;
}
while (i < maxI) {
if (i < minI && pEntrada1.substring(i, i + 1).equals(pEntrada2.substring(i, i + 1))) {
System.out.println("¿Letra " + (i + 1) + " igual en las dos palabras? True.");
} else if (i < minI) {
System.out.println("¿Letra " + (i + 1) + " igual en las dos palabras? False.");
} else {
System.out.println("¿Letra " + (i + 1) + " igual en las dos palabras? La palabra " + numEntrada
+ " no tiene letra " + (i + 1));
}
i += 1;
}
}
public String getEntrada() {
return entrada;
}
public void setEntrada(String entrada) {
this.entrada = entrada;
}
}