samples/componentinjection/anagram-modular/src-scrambler-simple/org/apidesign/anagram/scramblersimple/SimpleScrambler.java
author Jaroslav Tulach <jtulach@netbeans.org>
Sat, 14 Jun 2008 10:07:21 +0200
changeset 230 3282ef5328a8
parent 217 a7d412ef33a1
permissions -rw-r--r--
Yet another example of spring autoconfiguration
jtulach@217
     1
package org.apidesign.anagram.scramblersimple;
jtulach@217
     2
jtulach@217
     3
import java.util.Random;
jtulach@217
     4
import org.apidesign.anagram.api.Scrambler;
jtulach@217
     5
jtulach@230
     6
public class SimpleScrambler implements Scrambler {
jtulach@217
     7
    private static final Random random = new Random();
jtulach@217
     8
jtulach@217
     9
    public String scramble(String word) {
jtulach@217
    10
        for (;;) {
jtulach@217
    11
            int index1 = random.nextInt(word.length());
jtulach@217
    12
            int index2 = random.nextInt(word.length());
jtulach@217
    13
jtulach@217
    14
            if (index1 == index2) {
jtulach@217
    15
                continue;
jtulach@217
    16
            }
jtulach@217
    17
jtulach@217
    18
            char char1 = word.charAt(index1);
jtulach@217
    19
            char char2 = word.charAt(index2);
jtulach@217
    20
            
jtulach@217
    21
            StringBuilder sb = new StringBuilder(word);
jtulach@217
    22
            sb.setCharAt(index1, char2);
jtulach@217
    23
            sb.setCharAt(index2, char1);
jtulach@217
    24
            return sb.toString();
jtulach@217
    25
        }
jtulach@217
    26
    }
jtulach@217
    27
jtulach@217
    28
}