anagramdemo/simplescrambler/src/main/java/org/apidesign/demo/anagramwithspringandlookup/simplescrambler/SimpleScrambler.java
author Jaroslav Tulach <jtulach@netbeans.org>
Mon, 08 Feb 2010 14:51:45 +0100
changeset 977 5cb76f2cb8a0
parent 576 ba2d4fa4aa87
permissions -rw-r--r--
Hyperlink to Lookup and ApplicationContext's javadocs
     1 package org.apidesign.demo.anagramwithspringandlookup.simplescrambler;
     2 
     3 import java.util.Random;
     4 import org.apidesign.demo.anagramwithspringandlookup.Scrambler;
     5 import org.openide.util.lookup.ServiceProvider;
     6 
     7 // BEGIN: anagramdemo.springlookup.scrambler
     8 @ServiceProvider(service=Scrambler.class)
     9 public class SimpleScrambler implements Scrambler {
    10     private static final Random random = new Random();
    11 
    12     public String scramble(String word) {
    13 // FINISH: anagramdemo.springlookup.scrambler
    14         for (;;) {
    15             int index1 = random.nextInt(word.length());
    16             int index2 = random.nextInt(word.length());
    17 
    18             if (index1 == index2) {
    19                 continue;
    20             }
    21 
    22             char char1 = word.charAt(index1);
    23             char char2 = word.charAt(index2);
    24             
    25             StringBuilder sb = new StringBuilder(word);
    26             sb.setCharAt(index1, char2);
    27             sb.setCharAt(index2, char1);
    28             return sb.toString();
    29         }
    30     }
    31 
    32 }