Rotate String

We are given two strings, A and B.

A shift on A consists of taking string A and moving the leftmost character to the rightmost position. For example, if A = 'abcde', then it will be 'bcdea' after one shift on A. Return True if and only if A can become B after some number of shifts on A.

Example 1:
Input: A = 'abcde', B = 'cdeab'
Output: true

Example 2:
Input: A = 'abcde', B = 'abced'
Output: false



class Solution {
    public boolean rotateString(String A, String B) {
        int m = A.length();
        int n = B.length();
        if (m != n) return false;
        if (m == 0) return true;
        for (int i = 0; i < m; i ++) {
            String C = A.substring(1) + A.substring(0, 1); 
            if (C.equals(B)) {
                return true;
            A = C;
        return false;