私はこの質問がいくつかのメンバーのためにここで愚かに聞こえることを知っていますが、私はもう考えていません。Android:ArrayListのインデックス1を取得できません
私はアレイに奇妙な問題に直面しました。私はArrayList
にindex 1
を取得しようとしますが、常にを投げます。
私は次のコードでデバッグしています
for (int o=0; o<vcard.size(); o++){
if(vcard.get(o).contains(":")){
System.out.println("Contains");
String[] splitByTitikDuaVCard = vcard.get(o).split(Pattern.quote(":"));
//this line show the length is 2
System.out.println("RESULT LENGTH : " + splitByTitikDuaVCard.length);
for (int y=0; y<splitByTitikDuaVCard.length; y++){
System.out.println("RESULT Y : " + splitByTitikDuaVCard[y] + ", INDEX : " + y);
mapContentTerbaruVCard.put(splitByTitikDuaVCard[0], splitByTitikDuaVCard[1]);
}
}else{
System.out.println("Not Contains");
}
}
log
の結果を:
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : BEGIN, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : VCARD, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : VERSION, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : 3.0, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : N, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : Doe;John, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : FN, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : John Doe, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : ORG, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : PT. Pertamina, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : TITLE, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : Bussiness Manager, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : ADR, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : ;;Soekarno Hatta;Bandung;;46153;West Jave, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : TEL;WORK;VOICE, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : 021 203312, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 2
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : TEL;CELL, INDEX : 0
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : +62818456463111, INDEX : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT LENGTH : 1
03-08 23:00:18.594 8350-8350/? I/System.out: RESULT Y : TEL;FAX, INDEX : 0
log
がindex 1
が存在していることを示しているが、私はにindex 1
を入れしようとすると、 HashMap
、エラーが表示されます
私の質問は次のとおりです。ので、私はhashmap
注意にそれを保存することができますindex 1
を見つける方法:私はこの(Java ArrayList IndexOutOfBoundsException Index: 1, Size: 1)ソリューションを試してみたが、私の場合に取り組んでいません。
このエラーは、ArrayListのサイズが1であることを示しています。要素は0です。 –
"索引1が存在することを示すログ"このログを表示してください。また、完全なコード例を示す必要があります。クラスの中にあるメソッドの中にコードを入れてください。最後に、stacktrace全体をポストし、エラーの原因となった行を表示します。 –
配列は0から数え始めます。基本的には、次のようなエラーメッセージが表示されます。配列/ arraylistに1要素があり、実際にリストの2番目の要素であるインデックス1の要素にアクセスしようとしました。 (またはエラーが発生してからではありません)。 –