Java For Loop没有输出它应该如何(我认为)

时间:2015-08-14 21:19:02

标签: java arrays for-loop

我不知道如何研究这个,所以这就是。我正在尝试创建一个“翻转位”的程序,例如字符串“00110011”将返回“11001100”。我试图创建一个for循环来输出单个字符,所以看看是否以这种方式获取字符,但它会在不输出字符的情况下停止。

public static void main(String[] args) {
    String bitsList = "01010101";
    char[] sepBits = bitsList.toCharArray();
    System.out.println("Array'd");
    int num = bitsList.length();
    System.out.println("Got length");
    for (int count = 0; count == num;) {
                System.out.println(sepBits[count]);
                System.out.println("Outputted " + sepBits[count]);  
    }
}

3 个答案:

答案 0 :(得分:3)

你永远不会进入你的for循环,因为count0num8(长度"01010101")。因此count == num评估为false,并且未输入for循环。

尝试用以下代码替换你的for循环:

for (int count = 0 ; count < num ; count++) {
    // ...
}

答案 1 :(得分:0)

变量count不等于变量num,因此for循环永远不会触发。我想你正在寻找&lt; = not ==。此外,你永远不会改变计数,所以即使你做了改变,循环也会一遍又一遍地打印相同的点。

答案 2 :(得分:0)

这可能适合你

public static void main(String []args){
    String bitsList = "01010101";
    char[] sepBits = bitsList.toCharArray();
    int num = bitsList.length();

    for ( int i = num - 1 ; i >= 0 ; i-- ) {
        System.out.println("Outputted " + sepBits[i]);
    }    
}