@Override
    public boolean hasAnagramOf(String string, String string2) {
        String aTmp = string.toLowerCase();
        String bTmp = string2.toLowerCase();
        char[] charsA = aTmp.toCharArray();
        char[] charsB = bTmp.toCharArray();
        Arrays.sort(charsA);

        for (int i = 0; i < charsB.length; i++) {

            if (charsB[i] == charsA[0]) {
                char[] temp = Arrays.copyOfRange(charsB, i, i + charsA.length);
                Arrays.sort(temp);
                for (int j = 0; j < charsA.length; j++) {
                    if (temp[j] != charsA[j]) {
                        break;
                    }
                }
                if (temp[charsA.length - 1] == charsA[charsA.length - 1])
                    return true;
                if (i < charsA.length - 1)
                    continue;
                char[] tempR = Arrays.copyOfRange(charsB, i - charsA.length + 1, i + 1);
                Arrays.sort(tempR);
                for (int j = 0; j < charsA.length; j++) {
                    if (tempR[j] != charsA[j]) {
                        break;
                    }
                }
                if (tempR[charsA.length - 1] == charsA[charsA.length - 1])
                    return true;
                continue;
            }// close A == B

        }// close if

        return false;
    }