二维数组

时间:2014-03-24 20:33:37

标签: java arrays multidimensional-array

我正在为我的"因为"循环在我的程序中。我得到的主要错误是"类型不匹配:无法从int转换为Boolean。"我想做的就是拥有相应的"时间"元素打印出来。我知道条件必须是" classNames [0] .length"的类型bool,但我无法弄清楚如何做到这一点。谢谢!

    import javax.swing.JOptionPane;
import java.util.Scanner;

public class arraytest {
public static void main(String[] args)
{

    int i = 0;
    String classInput;

    String[][] classNames = {
              {"CIS 280", "ACC 212", "HIS 300"},
              {"Tue 7:30", "Thu 2:30", "Fri 1:00" }
            };


classInput = JOptionPane.showInputDialog("Please input a class name: ");


for (i = 0; classNames[0].length; ++i) // problem line
   if(classNames[0][i].equals(classInput)) 
   {
       System.out.println("class time:" + classNames[1][i]);

   }
}

}

3 个答案:

答案 0 :(得分:3)

您可能希望将iclassNames[0].length进行比较,以提供必要的boolean参数。仅提供classNames[0].length只是int

for (i = 0; i < classNames[0].length; ++i)

答案 1 :(得分:3)

我认为你的意思是:

for (i = 0; i < classNames[0].length; i++)

答案 2 :(得分:0)

import javax.swing.JOptionPane;
import java.util.Scanner;

public class arraytest {
public static void main(String[] args)
{

    int i = 0;
    String classInput;

    String[][] classNames = {
              {"CIS 280", "ACC 212", "HIS 300"},
              {"Tue 7:30", "Thu 2:30", "Fri 1:00" }
            };


classInput = JOptionPane.showInputDialog("Please input a class name: ");


for (i = 0; i<classNames[0].length; ++i) // problem line
   if(classNames[0][i].equals(classInput)) 
   {
       System.out.println("class time:" + classNames[1][i]);

   }
}

}

这将解决您的错误,您忘记了i&lt;