反向打印字符串[关闭]

问题描述 投票:-6回答:3

我正在尝试编写一个简单的程序来反转字符串,我在使用StringBuilder时遇到问题,因为我不确定如何正确使用它。

public class Reverse3 {
    public static void main(String[] args) { 
        char[] name = {'S', 't', 'e', 'v', 'e'};

        for(char c = 0; c < name.length; c++){
            System.out.println(name[c]);
        }

        StringBuilder sb = new StringBuilder(name);
        System.out.println(Builder.reverse());
    }
}
java arrays stringbuilder
3个回答
1
投票

没有StringBuilder构造函数需要char[]。您可以在循环中追加字符。并使用int作为你的循环计数器,如,

char[] name = "Steve".toCharArray();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < name.length; i++) {
    sb.append(name[i]);
}
System.out.println(sb.reverse());

或使用像for-each循环

char[] name = "Steve".toCharArray();
StringBuilder sb = new StringBuilder();
for (char ch : name) {
    sb.append(ch);
}
System.out.println(sb.reverse());

两个输出

evetS

1
投票

将char数组转换为字符串。

StringBuilder sb = new StringBuilder(new String(name));
System.out.println(sb.reverse().toString());

0
投票

您无法直接将数组转换为stringbuilder。

相反,请使用此。

public static void main(String []args){

    char[] name = {'S', 't', 'e', 'v', 'e'};

    StringBuilder sb = new StringBuilder();

    for(char c = 0; c < name.length; c++){
        sb.append(name[c]);
        System.out.println(name[c]);
    }

    System.out.println(sb.reverse());

 }

快乐的编码...... :)

© www.soinside.com 2019 - 2024. All rights reserved.