How to fill a two Dimensional ArrayList in java with Integers?

前端 未结 8 2421
迷失自我
迷失自我 2020-12-15 01:57

I have to create a 2d array with unknown size. So I have decided to go with a 2d ArrayList the problem is I\'m not sure how to initialize such an array or store information.

8条回答
  •  -上瘾入骨i
    2020-12-15 02:15

    List> array = new ArrayList>();
    // add row:
    array.add( new ArrayList() );
    // add a column:
    array.get( array.size() -1 ).add( 1 );
    

    Working demo:

    import java.util.*;
    import static java.lang.System.out;
    class Load { 
        public static void main( String ... args ) { 
    
            List> array = new ArrayList>();
    
            Scanner input = new Scanner(System.in);
            out.println("Enter n:");
            int n = input.nextInt();
    
            out.println("Enter m:");
            int m = input.nextInt();
    
            out.println("Enter the values:");
    
            for( int i = 0 ; i < n ; i++ ) { 
                // add row:
                List list = new ArrayList();
                array.add( list );
                for( int j = 0 ; j < m ; j++ ) { 
                    // add a column:
                    // array.get( array.size() -1 ).add( 1 ); or
                    list.add( input.nextInt() );
                }
            }
            out.println("Result:");
            out.println( array );
    
        }
    }
    

    Output:

    C:\>java Load
    Enter n:
    3
    Enter m:
    6
    Enter the values
    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    Result:
    [[0, 1, 2, 3, 4, 5], [6, 7, 8, 9, 10, 11], [12, 13, 14, 15, 16, 17]]
    

提交回复
热议问题