在Java上复制布尔数组

在Java上复制布尔数组,java,arrays,copy,boolean,Java,Arrays,Copy,Boolean,我正在尝试将一个布尔数组复制到另一个布尔数组中。这就是我正在尝试的: public class Nucleo { private boolean[] nivel; public Nucleo(boolean[] carga, double x, int i){ //Copy the array for(int j=0; j<carga.length; j++){ nivel[j]=carga[j]; } x=potencia; i=po

我正在尝试将一个布尔数组复制到另一个布尔数组中。这就是我正在尝试的:

public class Nucleo {
private boolean[] nivel;

public Nucleo(boolean[] carga, double x, int i){ //Copy the array
    for(int j=0; j<carga.length; j++){ 
        nivel[j]=carga[j];
    }

    x=potencia;
    i=porcentaje;

}
如果我尝试使用
复制System.arraycopy(carga,0,nivel,0,carga.length);“

我得到错误:
“找不到源代码”。

我正在使用Eclipse。我在System.arraycopy()I.imgur.com/pbGrKz6.png中发现了这个错误,应该对您有所帮助

例如:

我应该帮助你

例如:


当您试图访问您无权访问的方法的源代码时,Eclipse会抛出该消息。这并不意味着代码中有任何错误

您正在寻找的方法System.arrayCopy()是Java核心库的一部分,因此可以在您的JDK中包含的src.zip中找到

以下链接解释了如何将其链接到Eclipse环境-

但是,在本例中,System.arrayCopy()不是用Java实现的,而是本机实现的,因此您将无法查看源代码,至少不能查看Java源代码


如果您在复制数组时遇到实际问题(您的问题还不清楚),那么遵循上面timonik的示例可能会有所帮助。

当您尝试访问您无权访问的方法的源代码时,Eclipse会抛出该消息。这并不意味着代码中有任何错误

您正在寻找的方法System.arrayCopy()是Java核心库的一部分,因此可以在您的JDK中包含的src.zip中找到

以下链接解释了如何将其链接到Eclipse环境-

但是,在本例中,System.arrayCopy()不是用Java实现的,而是本机实现的,因此您将无法查看源代码,至少不能查看Java源代码


如果您在复制数组时遇到实际问题(您的问题还不清楚),那么遵循timonik的上述示例可能会有所帮助。

请显示给出错误的代码,而不是假定有效的代码。顺便问一下,您在哪里为
布尔[]nivel
分配内存?好的,非常抱歉。若昂·费尔南德斯说,我没有为数组保留内存。真不敢相信。谢谢大家。请显示给您错误信息的代码,而不是应该有效的代码。顺便问一下,您在哪里为
boolean[]nivel
分配内存?好的,非常抱歉。若昂·费尔南德斯说,我没有为数组保留内存。真不敢相信。谢谢大家。
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    boolean[] niveles = new boolean[8];
    rellniveles(niveles);
    Nucleo nivel1= new Nucleo(niveles, 5, 4);
    nivel1.getPotencia();
}

public static void rellniveles(boolean[] niv){ //Fill the array
    niv[0]=true;
    niv[1]=true;
    niv[2]=true;
    niv[3]=true;
    niv[4]=true;
    niv[5]=true;
    niv[6]=false;
    niv[7]=false;

}
public Nucleo(boolean[] carga, double x, int i) {
    this.nivel = (carga == null) ? null : Arrays.copyOf(carga, carga.length);
    ...
}