Java Programm

Racerin

Grünschnabel
Guten Abend,

leider habe ich Verständnisprobleme bei folgender Methode:
Code:
    public String encode(String word) {
        StringBuffer result = new StringBuffer();    // Initialize a string buffer
        for (int k = 0; k < word.length(); k++) {    // For each character in word
            char ch = word.charAt(k);                //  Get the character
            ch = (char)('a' + (ch -'a'+ 3) % 26);    //  Perform caesar shift
            result.append(ch);                       //  Append it to new string
        }
Warum %26? (mod 26)
Kann mir vielleicht jemand helfen?
Danke!
 
Zuletzt bearbeitet von einem Moderator:
ja, ich verstehe das prinzip des caesar-codes....dennoch verstehe ich nicht warum man

%26 rechnet, denn was hat das mit dem rest zu tun?
 
Die 27. Stelle des Alphabets soll ja wieder der ersten entsprechen, die 28. der zweiten etc. Die Modulo-Operation macht genau das: der Rest einer ganzzahligen Division durch 26 wird immer einen Wert zwischen 0 und 25 liefern.
 
Zurück