ここに問題を引き起こしているコードのスニペットがあります。
idIndex = panoBuffer.indexOf("\"photo_id\":");
System.out.println(idIndex);
photos[i].id = panoBuffer.substring(idIndex, panoBuffer.indexOf(','));
真ん中の行はデバッグ用です。ただし、次のような出力が得られます。
253
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -240
at java.lang.String.substring(Unknown Source)
at panoramio.Panoramio.jsonToArray(Panoramio.java:248)
at panoramio.Panoramio.main(Panoramio.java:83)
必要なインデックスが明らかに 253 であるのに、-240 と表示されるのはなぜですか?