There is an issue, does not pass an hidden test
boolean isOneSwapEnough(String s) {
if (s.length() == 1) return false;
for (int i = 0; i < s.length(); i++) {
for (int j = i; j < s.length(); j++) {
if (i != j) {
String n = (i > 0 ? s.substring(0, i) : "") + s.charAt(j) + (j-i>1 ? s.substring(i+1, j) : "") + s.charAt(i) + (j < s.length() - 1 ? s.substring(j+1, s.length()) : "");
System.out.println(n);
if (isP(n)) return true;
}
}
}
return false;
}
boolean isP(String s) {
for (int i = 0; i < s.length() / 2; i++) {
if (s.charAt(i) != s.charAt(s.length() - i - 1)) return false;
}
return true;
}