用java实现一个方法,将一个字符串进行镜像翻转,例如ABC翻转为CBA,又如1234翻转为3412,再如abcde翻转为decab。
public static String doMirroringConvert(String str) {
str = convertStr(str);
// 字符串长度
int size = str.length();
// 是否是偶数
int IsEven = size % 2;
int centeEndIndex = size % 2 == 0 ? size >> 1 : (size - 1) >> 1;
StringBuilder sb = new StringBuilder();
// 字符串长度为偶数
if (IsEven == 0) {
String start = convertStr(str.substring(0, centeEndIndex));
String end = convertStr(str.substring(centeEndIndex, size));
sb.append(start).append(end);
}
// 字符串长度为基数
else {
String start = convertStr(str.substring(0, centeEndIndex));
String center = convertStr(str.substring(centeEndIndex, centeEndIndex + 1));
String end = convertStr(str.substring(centeEndIndex + 1, size));
sb.append(start).append(center).append(end);
}
return sb.toString();
}
public static String convertStr(String str) {
// 将String 对象转换为可改变的StringBuffer类对象,然后调用StringBuffer类的reverse()方法实现反转
String strReverse = new StringBuffer(str).reverse().toString();
return strReverse;
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。