Rotating a String
in Java is a common interview question, and albeit it quite a simple one, it tests many fundamental concepts. Did I mention that it can also be done fairly quickly too!
Rotating a String in Java
public class Rotater {
public static void main(String...args) {
Rotater r = new Rotater();
System.out.println(r.rotateLeft("test", 1));
System.out.println(r.rotateRight("test", 1));
}
private String rotateLeft(String value, int n) {
return value.substring(n) + value.substring(0, n);
}
private String rotateRight(String value, int n) {
return rotateLeft(value, value.length() - n);
}
}
With the above code, we can rotate a string both left and right, but we don’t take into account any edge cases, exception handling, input validation or out of bounds problems.