变量n已在java中定义

变量n已在java中定义,java,Java,我正在尝试使用数组在java中动态创建对象 int number = Integer.parseInt(JOptionPane.showInputDialog("Enter number of objects")); int n[] = new int[number]; for (int i = 0 ; i < number ; i++) { SomeClass n[i] = new SomeClass(1,5,6);

我正在尝试使用数组在java中动态创建对象

int  number = Integer.parseInt(JOptionPane.showInputDialog("Enter number of objects"));
        int n[] = new int[number];
        for (int i = 0 ; i < number ; i++) {
          SomeClass n[i] = new SomeClass(1,5,6);

        }
int number=Integer.parseInt(JOptionPane.showInputDialog(“输入对象数量”);
整数n[]=新整数[数字];
for(int i=0;i
然而,行
SomeClass n[i]=新的SomeClass(1,5,6)抛出以下错误


变量n已定义

您的代码似乎试图将
n[i]
声明为变量。您不需要这样做,因为已经声明了
n
。您只需要为数组元素赋值:

n[i] = new SomeClass(1, 5, 6);
。。。但是您还需要更改
n
的类型:

SomeClass[] n = new SomeClass[number];

(您可以使用
SomeClass n[]
,但不鼓励使用这种语法样式;如果将所有类型信息放在一个位置,则更清晰。)

您的代码看起来像是试图将
n[i]
声明为变量。您不需要这样做,因为已经声明了
n
。您只需要为数组元素赋值:

n[i] = new SomeClass(1, 5, 6);
。。。但是您还需要更改
n
的类型:

SomeClass[] n = new SomeClass[number];

(您可以使用
SomeClass n[]
,但不鼓励使用这种语法样式;如果将所有类型信息放在一个位置,则更清楚。)

n
已定义为int数组,您再次尝试将其定义为
SomeClass
的引用,因此出现错误。尝试将
Someclass
的引用更改为
n

n
已定义为int数组,您再次尝试将其定义为
Someclass
的引用,因此出现错误。尝试将代码中的
Someclass
的引用更改为
n

以外的其他引用
n[i]
int
,因为
n
int[]
(数组
int
)。您不能动态更改代码中
n[i]

的类型
n[i]
int
,因为
n
int[]
(数组
int
)。您无法动态更改
n[i]

的类型,您的要求不清楚
n
被定义为
int n[]
一些行之后,您第二次将其定义为
SomeClass n[i]
什么是不允许的。您已经声明了n(即int n[]=new int[number];),并且您再次使用不同的数据类型(即SomeClass n[i]):pIt不清楚您的要求
n
被定义为
int n[]
一些行之后,您第二次将其定义为
SomeClass n[i]
什么是不允许的。您已经声明了n(即int n[]=new int[number];),并且再次使用不同的数据类型(即SomeClass n[i]):p