java - 将 2d double 数组转换为 2d int 数组

标签 java arrays multidimensional-array copy

我想将一个二维 double 组转换为另一个二维整数数组。 double 数组填充了低于 1 的值。我想要做的是创建一个新的 int[][]array,并使用 if else 语句将新数组中的值设置为 1 和 0。我已经发布了我的尝试但我不确定在哪里初始化我的 int 数组(称为 intMatrix)。

public int[][] readCorrMatrix(){

    String filename=ReadFile.getPath();
    double[][]rawDataMatrix=ReadMatrix.readDataMatrix(filename, ",");
    RealMatrix speaRealMatrix=Spearmans.calcSpearMatrix(rawDataMatrix);
    double[][]speaRealMatrixArray=speaRealMatrix.getData();
    int[][]intMatrix=null;
    for(int i=0; i<speaRealMatrixArray.length;i++){
        for(int y=0; y<speaRealMatrixArray[i].length;y++){

            intMatrix[i][y]=(int)speaRealMatrixArray[i][y];
            if(speaRealMatrixArray[i][y]<0.6)
            {
                intMatrix[i][y]=0;
            }
                else
                {
                    intMatrix[i][y]=1;
                }               
        }
    }
    return intMatrix;
}

你们知道我做错了什么吗?提前致谢, 杰特诺里。

最佳答案

int[][]intMatrix= new int[speaRealMatrixArray.length][];
...
for(int i=0; i<speaRealMatrixArray.length;i++){
      intMatrix[i] = new new int[speaRealMatrixArray[i].length];
      for(int y=0; y<speaRealMatrixArray[i].length;y++){
...

关于java - 将 2d double 数组转换为 2d int 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5238959/

相关文章:

java - Android 应用程序抛出 Guice 异常

java - 从整数字符串中减去整数

java - 如何将 2 个数组从一个类传递到另一个类

c - 'An Access Violation (Segmentation Fault) raised in your program'是什么意思?

c++ - 如何使用 std::valarray 来存储/操作连续的二维数组?

Java - 创建一个包含固定 40 个元素的数组的列表

java - JPA 的最后更新时间戳

java - 从同一类创建对象时会保存哪些值

PHP - 替换多维数组中的数据,特定键

java.sql.SQLSyntaxErrorException : ORA-02289: sequence does not exist while using default Generation Strategy in Hibernate with Oracle