使用另一个字符java交换char数组中的特定字符

时间:2012-09-08 13:52:12

标签: java swap arrays

自从我上次编程以来已经有8年了,然后它只是网络学位的基础知识。我正在编写一个基本程序来开始我的方式回到java编程。该程序正在处理存储为字符串的二进制数。

e.g。 01101110010

我已经完成了其他所有工作,但现在我要将所有“1”换成“0”而将所有“0”换成“1”

获取10010001101

问题是我知道交换字符的唯一方法是创建一个替换了字符的新字符串,但我一次只能做一个字符串然后我最终得到一个全部1的字符串s或0 s

所以我考虑使用char数组并尝试交换数组中的每个char,但我不知道如何去做。

3 个答案:

答案 0 :(得分:2)

String s = "01101110010".replace("0", "*").replace("1", "0").replace("*", "1");

答案 1 :(得分:1)

如果您使用的方法已打开,则可以使用String.replace()

String str = "01101110010";
System.out.println(str.replace("1", "X").replace("0", "1").replace("X", "0"));

答案 2 :(得分:1)

String str = "0101010101110";
char[] cs = str.toCharArray();
for (int i = 0; i < cs.length; i++)
{
    if (cs[i] == '1')
        cs[i] = '0';
    else if (cs[i] == '0')
        cs[i] = '1';
}
str = new String(cs);