Hola discupen he batallado mucho con este ejercicio CU00662B , es decir la ventana sí me indica si son iguales o no las letras pero al finalizar me pone este error "java.lang.StringIndexOutOfBoundsException: String index out of range: 5" si alguien pudiera aclararme las dudas por favor este es mi codigo:
import java.util.Scanner;
public class ComparacionPalabras{
    public static void main(String []args){
        System.out.println("Comenzamos ");
        Scanner escaner = new Scanner(System.in);
        String cadena1 = escaner.nextLine();
        System.out.println("Primera palabra: " + cadena1);
        String cadena2 = escaner.nextLine();
        System.out.println("Segunda palabra: " + cadena2);
        for(int i=0; i<=cadena1.length()|| i<=cadena2.length() ; i++){
            if(cadena1.substring(i, i+1).equals(cadena2.substring(i, i+1))){
                System.out.println("Letras " +(i+1)+ " son iguales");
            } else {System.out.println("Letras " + (i+1) + " son diferentes");}
            if(cadena1.substring(i, i+1).equals(" ") || cadena2.substring(i, i+1).equals(" ")) {
                System.out.println("No hay letras para comparar..");
            }
        }
    }
}