2011-12-27 14 views
0

私は、データベースから値を抽出し、Gui.soを更新するリストビューを実装する必要があります。ハッシュマップにカーソルから取得した値を格納する必要があるため、ハッシュマップと値にハッシュキーを動的に追加する必要があります。 コード:あなたがDBから取得したオブジェクトのハッシュコードを生成したい場合にはJavaでハッシュマップキーを動的に作成する方法は?

for(int i=0;i<=1;i++){ 
     List resTimeArraySms=new ArrayList(); 
     resultCursorSMS = NTDBHelper.getInstance().getResultDataByMediaType(getApplicationContext(), "Plan1",1); 

     while (resultCursorSMS.moveToNext()){ 

      HashMap resHash=new HashMap(); 
      resTimeStampSms = resultCursorSMS.getLong(resultCursorSMS.getColumnIndex(NTDataProvider.KEY_RESULTS_TIME_STAMP)); 
      resHash.put("timestampsms", resTimeStampSms); 
      resTimeArraySms.add(resHash); 

     } 



    resTimeArray.add(resTimeArraySms); 
    } 
+1

例カウンタを作成し、キーとしてカウンタを使用してみてくださいと各挿入後

をカウンタ値をインクリメントそれはあなたが求めているものを非常に明確ではありません。これをコーディングしてみましたか?あなたが達成しようとしているもののいくつかのコード(擬似コード)を表示できますか? – Mat

+0

私はあなたの質問について詳しく述べるべきだと信じています 一般的に、ハッシュのような構造のポイントは、キーで非常に高速に値を取得することです。O(1) value = get(key) あなたのハッシュのキーとして使用されるランダムな文字列を生成する? –

+0

あなたの質問を編集してください..何を尋ねようとしていますか? –

答えて

2

int counter = 0; 
      for(int i=0;i<=1;i++){ 
       List resTimeArraySms=new ArrayList(); 
       resultCursorSMS = NTDBHelper.getInstance().getResultDataByMediaType(getApplicationContext(), "Plan1",1); 

       while (resultCursorSMS.moveToNext()){ 

        HashMap resHash=new HashMap(); 
        resTimeStampSms = resultCursorSMS.getLong(resultCursorSMS.getColumnIndex(NTDataProvider.KEY_RESULTS_TIME_STAMP)); 
        resHash.put("timestampsms"+counter, resTimeStampSms); 
        resTimeArraySms.add(resHash); 
        counter++; 
       } 



      resTimeArray.add(resTimeArraySms); 
      } 
0

は、コモンズ・ラングからHashCodeBuilderを見てみましょう。

関連する問題