Error while implementing Yates Shuffle for chars

19 Views Asked by At

I'm having an array of characters, which I tried to mix using Yates Shuffle, However this resulted in an error

Code:

public static void main(String[] args) {
        char[] alphabet = "abcdefghijklmnopqrstuvwxyz".toCharArray();
        for(int i = 0; i < alphabet.length; i++)
        {
            System.out.println(alphabet[i]);
        }
        knuth(alphabet);
        for(int i = 0; i < alphabet.length; i++)
        {
            System.out.println(alphabet[i]);
        }
    }
    
    public static void knuth(char[] array) {
        Random r = new Random();
        for (int i = array.length - 1; i>0; i--)
        {
            int index = r.nextInt(i);
            int tmp = array[index];
            array[index] = array[i];
            array[i] = tmp;
        }
    }

Error:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    Type mismatch: cannot convert from int to char

    at testing_Class.knuth(testing_Class.java:28)
    at testing_Class.main(testing_Class.java:14)
0

There are 0 best solutions below