有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

数组Java 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) 个答案

  1. # 1 楼答案

    你永远不会进入for循环,因为count0,而num8(长度为"01010101")。因此count == num的计算结果为false,并且不输入for循环

    尝试将for循环替换为:

    for (int count = 0 ; count < num ; count++) {
        // ...
    }
    
  2. # 2 楼答案

    变量count不等于变量num,因此for循环永远不会触发。我想你在找<;=不是==。而且你永远不会改变计数,所以即使你改变了,循环也会一遍又一遍地打印同一个点

  3. # 3 楼答案

    这可能对你有用

    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]);
        }    
    }