文字列配列をList/ArrayListに分割する際に問題が発生しました。これは基本的なことだと思いますが、非常に多くの例を見てきたので、何が起こっているのか(または起こっていないのか)について完全に混乱しています。
いくつかのコードスニペット:
private String[] stringTempList;
private ArrayList<List<String>> arrayImageList = new ArrayList<List<String>>();
私のリストはウェブページから読み取られ、['One'、'Two'、'Three'などのプレーンテキストでフォーマットされています...]
だから、私が欲しい/望まないものを取り除くためのいくつかの行(注-私はプロセスをたどるのを助けるためにこれらを分離しました):
stringExtractedList = stringText.substring(stringText.indexOf("['") + 2,
stringText.lastIndexOf("']"));
stringTempList = stringExtractedList.split("','");
私が見ることができるものから、上記は期待どおりに機能します(配列(stringTempList)を作成し、それが見える場所で各アイテムを分割します','
。
どこが悪いのか:
arrayImageList.add((List<String>) Arrays.asList(stringTempList));
この行が配列(stringTempList)を取得し、アイテムをArrayListに移動することを期待しています。arrayImageList.get(i);
個々の要素にアクセスするのと同様のコードを使用したいと思っていました。
ただし、上記のコードは、arrayImageListの最初のインデックスにすべてのアイテムを追加しているようです(リストサイズは常に1です)。たとえば、いくつかのデバッグテストを実行するLog.d("Test", arrayImageList.get(0));
と、次のようになります。
[One,Two,Three,Four, etc...]
誰かが私を正しい方向に向けてくれたらありがたいです。ここで2つの異なるアイデアを混同したと思います。