2017-04-23 20 views
0

私は達成しようとしていることについて研究しています。これは私のコードです。ここで主な機能は、空白で区切られた整数を持つfile.txtを読み込むことです。ファイルは1つずつ読み込まれます。しかし、私は知りたい...どのようにArrayListの中に整数を格納することができますか?しかし、ArrayListの各インデックスには、通常のように1つではなく2つの整数がありますか?ファイルから整数を読み込み、ArrayList内のインデックスごとに2つの整数を保存します。

import java.io.File; 
    import java.util.ArrayList; 
    import java.util.Arrays; 
    import java.util.Scanner; 

    public class ReadFile { 

     public static void main(String[] args) { 

      int[] arr = readFile("address.txt"); 
      System.out.println("The memory block generated is:"); 
      System.out.println(Arrays.toString(arr)); 

     } 
      // access this method in FIFO 
      public static int[] readFile(String file) { // this main method 

       try { // try and catch 

       File f = new File(file); 
       @SuppressWarnings("resource") 
       Scanner r = new Scanner(f); // read the file with scanner 
       int count = 0; // count for the integers 

       while(r.hasNextInt()) { // while keep reading 
        count++; 
        r.nextInt(); 

       } 

       int[] array = new int[count]; 

       @SuppressWarnings("resource") 
       Scanner readAgain = new Scanner(f); // read again 

       ArrayList<ArrayObjects> blockMem = new ArrayList<>(); // array size * we can use dynamic array 

       for(int i = 0; i < count; i++) { 
       // i want to iterate and save them 
       } 

       return array; 

      } catch(Exception fnf) { 
       System.out.println(fnf.getMessage() + "The file could not be open, try again"); 
       System.exit(0); 
      } 
       return null; 

      } // method closed 
    }` 
+0

'INT [] '配列、すなわち'のArrayList データ=新規のArrayList <>(25を保持することができる 'ArrayList'の作成を作成します); '、各行に対して新しい' int [] '配列を作成し、' int [] '配列に値を加えて、それを' ArrayList'に追加します – MadProgrammer

答えて

0

2つの整数で新しいクラスを作成します。今

class TwoIntegers{ 
    int one,two; 
    TwoIntegers(int data1,int data2){ 
     one = data1; 
     two = data2; 
    } 
} 

型TwoIntegersのオブジェクトのArrayListの

ArrayList<TwoIntegers> blockMem = new ArrayList<TwoIntegers>(); 
//now you can iterate and insert integers you need 
blockMem.add(new TwoIntegers(1,2)); 
blockMem.add(new TwoIntegers(3,4)); 
関連する問題