Hola, les adjunto el ejercicio CU00662B del curso elemental de programador Java resuelto:
Clase para crear el objeto que toma la palabra del teclado y realiza diversas operaciones
/**
* ComparaTextos: compara las letras de dos textos.
*
* @author Bettina
* @version 1 - 20/09/2/16
*/
import java.util.Scanner;
public class ComparaTextos
{
private String entradaTexto;
public ComparaTextos()
{
entradaTexto = "";
pedirTexto();
}
public void pedirTexto() {
Scanner entradaScanner = new Scanner(System.in);
entradaTexto = entradaScanner.nextLine();}
public String getEntrada() {return entradaTexto;}
public int getLongitud(){
return entradaTexto.length();}
public String letraAcomparar(int posicion) {
return entradaTexto.substring(posicion,posicion+1);}
}
Clase principal para probar la clase ComparaTextos
/**
* Compara las letras de dos textos
*
* @author Bettina
* @version 1 - 20/09/16
*/
public class TestComparaTexto
{
public static void main (String[] args)
{
int longPalabra1, longPalabra2, longMaximo;
String letra1 ="", letra2 = "";
// String letra2 = "";
System.out.println("Inicio del Programa");
System.out.println("Ingrese la primera palabra:");
ComparaTextos palabra1 = new ComparaTextos();
System.out.println("Ingrese la segunda palabra:");
ComparaTextos palabra2 = new ComparaTextos();
longPalabra1 = palabra1.getLongitud();
longPalabra2 = palabra2.getLongitud();
// Determina el tamaño del for
if (longPalabra1 > longPalabra2){
longMaximo = longPalabra1;}
else { longMaximo = longPalabra2;}
for (int i=0; i<longMaximo ; i++) {
// verifica primero si tiene la letra
if(i>longPalabra1-1){
System.out.println("La palabra 1 no tiene letra "+(i+1));}
else if (i>longPalabra2-1){ System.out.println("La palabra 2 no tiene letra "+(i+1));}
// compara si son iguales las letras
else {
letra1 = palabra1.letraAcomparar(i);
letra2 = palabra2.letraAcomparar(i);
if(letra1.equals(letra2)){
System.out.println("Letra "+(i+1)+" es igual en las dos palabras? True");}
else if(i<=longPalabra1 && i<=longPalabra2){
System.out.println("Letra "+(i+1)+" es igual en las dos palabras? False");
}
}
}
System.out.println(" Fin del Programa");
}
}
Muchas gracias por vuestra ayuda