2017-03-19 26 views
-1

別のハッシュマップに大量のデータを読み込もうとしていません。私は、ファイルのすべてのデコードを処理し、hashMapに転送する別のクラスを使用します。私の問題は、特定のhashMap(例えばhashMap x)に1つのファイルをロードすることです。しかし、私は別のデータを元にロードしなければなりません。 hasMap y、hashMap xは、hashMapが持つと思われるすべてのもので書き直されます。私は後で、いくつかのキーと値が異なるファイルから到達していることを知っていましたが、hashMapが重複を許可しないため、消去されていたものもありました。ですから、xとyの私の最終結果は、両方のファイルから1つのhashMapへのマッシュアップです。私はこれを解決する方法を知らない。ここでファイルをハッシュマップに読み込む問題

は、私がこれまで持っているものです:codeMapが静的であるよう

import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 
import java.util.HashMap; 
import java.util.Map; 

public class CodeFileProcessor { 

    private static Map<String, String> codeMap = new HashMap<String, String>(); 

    public static Map<String, String> readCodeFile(String fileName) throws IOException { 
     codeMap.clear(); 
     BufferedReader br = new BufferedReader(new FileReader(fileName)); 
     String nextLine = br.readLine(); 
     while(nextLine != null) { 
      String[] parts = nextLine.split(","); 
      codeMap.put(parts[0], parts[1]); 
      nextLine = br.readLine(); 
     } 
    br.close(); 
    return codeMap; 
    } 
} 
+0

の可能性のある重複(http://stackoverflow.com/questions/ [「静的」キーワードはクラスで何をしますか?] 413898/static-keyword-do-in-a-class) –

+0

クラスの下のすべてが静的である必要があります。私は教授からUMLに従っています。 – Collecto

+0

私は教授が実際にJavaコードを書く方法を学ぶことを望んでいると確信しています。変数が静的であることが何を意味するのかを見てください。同じHashMapを何度も繰り返し使用しています。教授の要件に関する問題や質問がある場合は、教授に質問するのではなく、なぜそれについて私に聞かないのですか? –

答えて

0

あなたの問題が見えます。あなたは基本的に同じマップを何度も何度も再利用しており、上書きされているように見えます。

メソッド呼び出しの一部として、新しいマップを作成してみてください:

//DELETE THIS LINE - private static Map<String, String> codeMap = new HashMap<String, String>(); 

public static Map<String, String> readCodeFile(String fileName) throws IOException { 
    //Create a new map instead of reusing the static (shared) one 
    Map<String, String> codeMap = new HashMap<String, String>(); 
     ... 
+0

割り当てのUMLに従っています。このクラスのすべては静的でなければなりません。 UMLが間違っていない限り、これはどうすれば – Collecto

+1

になるはずです。あなたのUMLはこの場合間違っていると思います。複数の別個のインスタンスが必要な場合は静的マップを使用できません(説明から「x」と「y」をマップします) – Paolo

+0

助けてくれてありがとう – Collecto

関連する問題