在java中翻转字符

  • 本文关键字:字符 翻转 java java
  • 更新时间 :
  • 英文 :


因此,根据标题,我试图将字符从一个值翻转到相反的值。例如,-将变为+,+将变为负。这是目前仅有的两个值,但我想知道该如何处理。到目前为止,我有这个

public static String flip(String s, int index) {
    System.out.print("suuuh");
    String k = s;
    ArrayList<Character> array = new ArrayList<>();
    for (Character c : k.toCharArray()) {
        array.add(c);
        System.out.print(c);
    }
    for (int i = 0; i > index; i++) {
        if (array.get(i) == '-') {
            array.set(i, '+');
        } else {
            array.set(i, '+');
        }
    }
    StringBuilder builder = new StringBuilder();
    for (Character c : array) {
        builder.append(c.toString());
    }
    return builder.toString();
}

但它不会将+翻转为-,反之亦然。

您的基本方法是正确的,尽管我建议使用HashMap来存储对立面。

你的代码什么都不做的原因是因为

for (int i = 0; i > index; i++) {

应该是其他东西,可能是

for (int i = 0; i < array.size(); i++) {

此时,循环将立即终止。

此外,else应为

array.set(i, '-');

另一个改进是使用List<Character>对此没有意义;您可以直接使用toCharArray()返回的char

最新更新