我一开始漏了 a=a 这种情况,懒得看你代码了。你检查下是不是。
给你讲下我的思路,参考下。
+ ab长度不相等: false
+ 相等:
    + 找到ab不同字符的个数 x
    + x>2: false
    + x==1: false;
    + x==2: 判断是否交换
    + x==0: 判断a是否有重复字符串。
+ 感觉这道题 主要考察 if 分支结构吧。