为什么我收到错误:java:16:错误:非法启动类型 for(int i = 0; i< 9; i ++){ 我已经检查了旧实验室,这是我认为的正确用法。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Lab3Panel extends JPanel{
Lab3Panel () {
setLayout(new GridLayout(3,3));
}
Lab3Label label[] = new Lab3Label[9];
for(int i = 0; i < 9; i++){
label[i] = new Lab3Label();
add(label[i]);
}
答案 0 :(得分:5)
for循环需要在一对{}
括号中的方法,构造函数或最小值。但可能是一个构造函数。
答案 1 :(得分:3)
你的循环代码是完全合法的,但它需要在一个方法内部才能实际被解释为代码并运行。目前它只是坐在类声明中以及它之前的行,所以可怜的编译器不知道你想用这个代码做什么,或者你想要它运行。 :d
答案 2 :(得分:2)
许多人已经指出你需要从一个方法运行循环。这是一个例子:
Class Lab3Panel extends JPanel{
Lab3Panel () {
setLayout(new GridLayout(3,3));
}
Lab3Label[] label = new Lab3Label[9];
newlabels();
public void newlabels()
{
for(int i = 0; i < 9; i++){
label[i] = new Lab3Label();
add(label[i]);
}
}
答案 3 :(得分:1)
它必须位于Class中的方法中。数组也应该像这样声明:
Lab3Label[] label = new Lab3Label[9];