Palindrom Eigenschaft mittels Array testen

Also ich würde das irgendwie so lösen:
Java:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class PalindromChecker {

    public static void main(String[] aArgs) throws IOException {
        BufferedReader _reader = new BufferedReader(new InputStreamReader(System.in));
        String _wort = null;
        do {
            System.out.println("Geben Sie ein Wort ein:");
            _wort = _reader.readLine();
        } while(_wort.length() < 1);
        _wort = _wort.toLowerCase();
        StringBuilder _builder = new StringBuilder(_wort);
        _builder.reverse();
        if(_wort.equals(_builder.toString())) {
            System.out.println("Palindrom");
        } else {
            System.out.println("Kein Palindrom");
        }
    }
}


Und wenn du es unbeding mit einem Array lösen willst, kannst du immer noch die beiden Strings in ein char-Array packen und dann jeden einzelnen Buchstaben vergleichen
 
Zuletzt bearbeitet:
Also ich würde das so lesen, ist auch einfach zu verstehen.!


Code:
public class ArrPalindrom {

	public static void main(String[] args) {

		String s1, s2;
		char h;

		s1 = JOptionPane.showInputDialog("Geben Sie ein Wort ein:");
		System.out.print(s1);
		s1 = s1.toLowerCase();

		char[] arr = s1.toCharArray();

		for (int i = 0; i < (arr.length -i); i++) {
			h = arr[i];
			arr[i] = arr[(arr.length-1)-i];
			arr[(arr.length-1)-i] = h;
		}

		s2 = String.valueOf(arr);

		if (s1.equals(s2)){
			System.out.print(" ist ein Palindrom");
		}
		else{
			System.out.print(" ist kein Palindrom");
		}
	}
}
 
Zurück