Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在一个二维数组中写入另一个只有一维数组大小的类?_Java_Arrays_Multidimensional Array - Fatal编程技术网

Java 如何在一个二维数组中写入另一个只有一维数组大小的类?

Java 如何在一个二维数组中写入另一个只有一维数组大小的类?,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,当我创建一个二维数组并只初始化数组的一个维度时,一切都正常,但如果我从另一个类调用它,一切都不正常。为什么? import java.util.Scanner; public class Coursework { public static void main(String[] args) { int verticalMatrix; // vertical size of Matrix int horisontMatrix; // horisont System

当我创建一个二维数组并只初始化数组的一个维度时,一切都正常,但如果我从另一个类调用它,一切都不正常。为什么?

import java.util.Scanner;

public class Coursework   {
public static void main(String[] args) {
    int verticalMatrix; // vertical size of Matrix
    int horisontMatrix; // horisont


    System.out.println("Enter vertical size of Matrix ");
    Scanner sc = new Scanner(System.in);
    verticalMatrix = sc.nextInt();

    int [][] matrix = new int [verticalMatrix][];

}}
这段代码可以工作,但当我使用扩展类矩阵时,我不能只保存一个大小(verticalMatrix)。如何修复它

public class Coursework extends Matrix {

public static void main(String[] args) {
    int verticalMatrix; // vertical size of Matrix
    int horisontMatrix; // horisont


    System.out.println("Enter vertical size of Matrix ");
    Scanner sc = new Scanner(System.in);
    verticalMatrix = sc.nextInt();

    int [][] matrix = new int [verticalMatrix][];
矩阵类

    public class Matrix {

    public static int [][] Matrix;

    public void getSize(){  
            System.out.println("This method still epmty");
    }

}

您可以像调用类一样调用int数组变量(
Matrix
)。这可能不会导致错误,但不是首选。您可以将数组的垂直长度t传递给构造函数,如下所示:

public class Matrix {

    public static int [][] matrix;

    public void Matrix(int verticalLength){
        this.matrix = new int[verticalLength][];
    }

    public void getSize(){  
            System.out.println("This method still epmty");
    }
}

我对这个问题投了反对票,因为“什么都不管用”不是一个有用的问题陈述。请回答您的问题以澄清您的问题,此否决票可能会被撤回。请将变量public static int[][]矩阵的名称更改为除包含它的类名称之外的其他名称。“.我不能只保存一个大小…”为什么不?你有错误吗?错误是什么?谢谢,但是如何在主类中使用方法矩阵(int verticallength)?如何调用此方法和初始数据?您从主方法中的用户处获取数据(或者您可以编写一个帮助器类),然后使用Matrix类的构造函数创建一个对象。如果你不知道如何使用构造函数,那就去查一下。