2017-02-28 12 views
1

私はAndroidアプリケーションで作業しています。forループの後に配列リストの結果を表示する方法を探しています。すべての値(heure、minute ...)私が扱っている変換(BCDから整数へ)の関数の後の別のリストビューで。ご協力ありがとうございました!!配列リストから別の配列にデータを設定するには

Integer[] array = {heure, minute, seconde, jour, mois, year}; 
    ArrayList<Integer> list = new ArrayList<>(); 
    /*Collections.addAll(list, array);*/ 
    for (int value : list) { 
     temp = value; 
     temp >>= 4; 
     result = temp * 10; 
     temp = value & 0b00001111; 
     result += temp; 
     this.total= result; 
     list.add(this.total); 
    } 
    tvGetdata.setText(list.toString()); 
+1

あなたの実際の質問やあなたがどこにいるのかを具体的に説明できますか? –

+0

私は別のarraylistで変換されたすべての値を表示したい –

答えて

0

ここでは2種類のデータ構造を誤用しています。

  • Array

    • はあなたが
  • Listを処理する値の固定セットを持っている時はいつでも、それを使用すると、項目のリストである項目の固定長のリストでありますそれは(少なくとも標準的な実装では)アイテムの数に常に容量を適応させようとします。

    • あなたがそうArray

よりダイナミックなものを必要なときの結論にあなたは(あなたがよSE理由を以下)の構造にこれらの使用方法を切り替えることで、より良い結果を得るでしょう、それを使用しています。もちろん

// we exactly know our initial input, so we can use an Array here 
Integer[] array = {heure, minute, seconde, jour, mois, year}; 

// we don't know how many items will go in here, so we use a List for now 
ArrayList<Integer> list = new ArrayList<>(); 

// you can loop over an Array just as over a List 
for (int value : array) { 
    // TODO do your calculations and save them in this.result 

    // the ArrayList provides this neat utility to add an element 
    // it will automatically increase its capacity, if required 
    list.add(this.result); 
} 
tvGetdata.setText(list.toString()); 

あなたは別のListarray変数を交換し、ListListからの要素を設定することができます。基本的な構造はまったく同じです。

+0

あなたに感謝しますが、空のリストを表示する、値が挿入されていません! –

+0

それはいつも最後のデータ(年)を表示し、6は一緒に表示しない –

+0

何が間違っているのか分かりません。あなたのサンプルをどのように実装したかを教えてください。あなたの質問を編集することによって? – Izruo

1

あなたは空リストにforeachを使用しています。 あなたのコードは無視します。 あなたの配列を使ってください。

Integer[] array = {heure, minute, seconde, jour, mois, year}; 
ArrayList<Integer> list = new ArrayList<>(); 
for (int value : array) { 
    temp = value; 
    temp >>= 4; 
    result = temp * 10; 
    temp = value & 0b00001111; 
    result += temp; 
    this.total= result; 
    list.add(this.total); 
} 
tvGetdata.setText(list.toString()); 
+0

はい私は結果を得るあなたに感謝 –

関連する問題