ArrayList<ArrayList<Integer>> al= new ArrayList<ArrayList<Integer>>();
    int[][] mat= new int[row][col];
    for(int i=0;i<row;i++)
    {
        for(int j=0;j<col;j++)
        {
            mat[i][j]=s.nextInt();
        }
    }
    for(int i=0;i<row;i++)
    {
        al.add(mat[i]);
    }

int[] cannot be converted to ArrayList al.add(mat[i]);

推荐答案

An ArrayList is not an array

定义一个包含ArrayList个对象的ArrayList.但是你试图放入一个int个原始值的array.数组是notArrayList.所以你收到一个错误,解释你违反了类型系统.你不能把香蕉放在养cat 的地方.

Define a list of arrays: List < int[] >

相反,将您的ArrayList定义为包含一个数组:

ArrayList < int[] > list = new ArrayList < int[] > ( );

请注意,您不需要重复等号右侧的参数化类型.在现代Java中,编译器可以通过查看equals的左侧来推断类型.

ArrayList < int[] > list = new ArrayList <> ( );

此外,通常最好使用提供所需功能的最高超类或超接口.所以你可以把你的ArrayList称为List.在Java 21+中,你可以使用SequencedCollection(JEP 431).

List < int[] > list = new ArrayList < int[] > ( );

完整示例代码:

// Prepare.
List < int[] > list = new ArrayList <> ( );
int rows = 3, cols = 3, counter = 1;
int[][] mat = new int[ rows ][ cols ];

// Populate array.
for ( int i = 0 ; i < rows ; i ++ )
{
    for ( int j = 0 ; j < cols ; j ++ )
    {
        mat[ i ][ j ] = counter ++ ;
    }
}

// Populate ArrayList.
for ( int index = 0 ; index < rows ; index ++ )
{
    list.add ( mat[ index ] );
}

// Report.
list.forEach ( ints -> System.out.println ( Arrays.toString ( ints ) ) );

运行时:

[1, 2, 3]
[4, 5, 6]
[7, 8, 9]

Java相关问答推荐

Gmail Javi API批量处理太多请求

如何在Spring Security中设置CustomLogin路径?

填写文本字段后锁定PDF

在for—each循环中的AnimationTimer中的if语句'

CAMEL 4中的SAXParseException

使用@MappdSuperClass扩展ParentClass&Won t继承ParentClass属性

现场观看Android Studio中的变化

FALSE:它应该在什么时候使用?

蒙蒂霍尔比赛结果不正确

Jakarta CDI强制bean构造/注册遗留事件侦听器

声明带有泛型的函数以用作查找映射中的值

如何在不删除Java中已有内容的情况下覆盖文件内容?

在Java中将int[]矩阵添加到ArrayList中,但出现错误

除0错误/抱歉我的句子是PT

未调用OnBackPressedCallback-Activitiy立即终止

通过/失败的参数化junit测试方法执行数

[jdk21][Foreign Function&;Memory API]MemoryLayout::varHandle通过可变数组进行 struct 化的问题

如何在Java上为循环数组从synchronized迁移到ReentrantLock

Swagger.io OpenApi v3.0 声明默认媒体类型

将在 Docker 中运行的 Spring Boot 连接到在 Docker 中运行的 PostgreSQL,无需 compose 文件?