借助StringBuffer
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
String rs = null;
char[] c = new char[26];
for(int i =0; i<26; i++)
{
c[i] = (char)('A'+i);
}
StringBuffer sb = new StringBuffer(s);
int l = s.length();
for(int i = 0; i<l; i++)
{
char t = s.charAt(i);
boolean flag = false;
for(int j = 0; j<26; j++)
{
if(t == c[j])
{
flag = true;
break;
}
}
if(flag)
{
char tt = (char)(155-t);
String tem1 = String.valueOf(t);
String tem2 = String.valueOf(tt);
sb.replace(i, i+1,tem2);
}
}
System.out.println(sb.toString());
}
}
//一些其他的尝试
/* class TwoTuple<A, B>
{
public final A first;
public final B second;
public TwoTuple(A a, B b)
{
this.first = a;
this.second = b;
}
}*/
/* String s1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
String s2 = "ZYXWVUTSRQPONMLKJIHGFEDCBA";
String[] sa = new String[26];
sa = s1.split("");
String[] sb = new String[26];
sb = s2.split("");
TwoTuple<String,String>[] a = new TwoTuple[26];
for(int i = 0; i<26;i++)
{
a[i] = new TwoTuple(sa[i],sb[i]);
System.out.println(a[i].first+a[i].second);
}*/
/* TwoTuple<Character,Character>[] a = new TwoTuple[26];
for(int i =0; i<26; i++)
{
Character c1 = (char)('A'+i);
Character c2 = (char)('Z'-i);
a[i] = new TwoTuple(c1,c2);
}*/