Java无法解析或不是字段

Java无法解析或不是字段,java,for-loop,Java,For Loop,在我正在研究的神经网络中写一个for循环,它会对循环条件本身的一部分抛出一个错误 代码如下: // for each neuron sum the (inputs * corresponding weights) .Throw // the total at our sigmoid function to get the output. for (int j = 0; j < neuronLayers.get(i).numNeurons; ++j) {} } 错误在于 neur

在我正在研究的神经网络中写一个for循环,它会对循环条件本身的一部分抛出一个错误

代码如下:

// for each neuron sum the (inputs * corresponding weights) .Throw
// the total at our sigmoid function to get the output.

for (int j = 0; j < neuronLayers.get(i).numNeurons; ++j)
    {}
}
错误在于

neuronLayers.get(i).numNeurons;
它说“numNeurons无法解决或不是一个领域”


任何帮助都将不胜感激,因为我将不得不在for循环中引用来自同一第二个类的另一个ArrayList,我想知道如何最好地表达它以确保我的代码工作。

提示:当您执行
层时。get(i)
,它将返回double,因此,您无法访问
SNeuronLayer
。相反,请尝试使该类成为ArrayList,并将该双值作为属性之一包含在内。因此,您可以访问
Double
SNeuronLayer

假设您有一个名为
SNeuronLayer
的类。然后在其中保留以下属性

class SNeuronLayer{
    int numNeurons;
    double your_double;
}
现在将数组列表定义为:

ArrayList<SNeuronLayer> list;
您可以访问Int值,如:

list.get(i).numNeurons;

是的,
neurolayers.get(i)
将是一个
Double
,而不是
SNeuronLayer
。这是一个打字错误还是一个你真的有一个空体的循环(
{}
)?我不会有一个空体的循环,我只是还没有写出来,因为仔细看,我会发现我放在for循环体中的一些代码也有同样的问题。我建议您学习增强的for循环。这将允许您更轻松地循环您的
ArrayList
,并简化所有
neuronlayer.get(i)
调用。嘿,这很好地解释了逻辑。你能给我举个例子说明我是怎么写的吗?@JosephOliver
ArrayList
。啊,谢谢你!我会在我工作的类的开头声明,还是在方法的开头声明?
ArrayList<SNeuronLayer> list;
list.get(i).your_double;
list.get(i).numNeurons;