Search code examples
androidarraysstringrandomshuffle

how to shuffle a letters of array in android?


String arrAnimal[] = {"cat","dog","parrot","fish"};

I need to shuffle each word and set it to TextView, when click button wanna go through each element(see Shuffeled elements).


Solution

  • Complete working code,

    String[] animals = {"cat","dog","parrot","fish"};
    for (int i = 0; i < animals.length; ++i) {
        List<Character> letters = new ArrayList<>(animals[i].length());
        for (char c : animals[i].toCharArray()) {
            letters.add(c);
        }
        Collections.shuffle(letters);
        StringBuilder builder = new StringBuilder();
        for (char c : letters) {
            builder.append(c);
        }
        animals[i] = builder.toString();
    }
    System.out.println(Arrays.toString(animals));
    

    Outputs: [tca, ogd, roptar, sifh]

    EDIT: To print line by line, change the last line to,

    for (String s : animals) {
        System.out.println(s);
    }