-5
import java.util.Scanner;
class TestMatrix
{
public static void main(String args[]){
Scanner in=new Scanner(System.in);
System.out.println("Enter the number of matrices: ");
int num=in.nextInt();
int[][] temp=new int[10][10];
Matrix[] matrixarray=new Matrix[num];
Matrix.numberOfMatrices(num);
for(int i=0;i<num;i++)
{
System.out.println("Enter the rows and columns of M["+(i+1)+"]: ");
int r=in.nextInt();
int c=in.nextInt();
System.out.println("Enter the values: ");
for(int x=0;x<r;x++)
for(int y=0;y<c;y++)
{
temp[x][y]=in.nextInt();
}
matrixarray[i].inputMatrixValues(temp);
}
}
}
public class Matrix
{
static int number;
int[][] matrix=new int[10][10];
int row,col;
public static void numberOfMatrices(int n)
{number=n;}
public void inputMatrixValues(int[][] matrix)
{
for(int i=0;i<row;i++)
for(int j=0;j<col;j++)
{
this.matrix[i][j]=matrix[i][j];
}
}
}
上面的代碼在第22行調用方法inputMatrixValues()時返回空指針異常。對象數組中的NullPointerException
matrixarray是類Matrix的對象數組。訪問對象數組的第i個元素時發生異常。矩陣對象數組在第9行中創建。請檢查代碼的哪一部分會導致錯誤。
'矩陣[] matrixarray =新的Matrix [NUM];' 這創建填充空 長度NUM的數組這是原因因爲您正在訪問僅包含空引用的數組的索引。 –
@Xoce웃Pepeúpa您是對的,請將它作爲評論發佈。 –