Javaに限ったことではありませんが、配列番号ってどうして0から始まるんでしょう。
1からのほうが色々すんなり行くと思うのです。