こんにちは、にいるです。
今回は開発関連です。
エラー「List index out of bounds: 0」について、見ていきたいと思います。
1.エラー発生原因
「List index out of bounds: 0」の発生原因は、リストの中身がないという意味です。
ただ、このエラーは中身がないというより、指定した0番目の要素には何も入っていないことを意味しています。
何もない0を指定しているため発生したエラーですね。
ここでは0となっていますが、0の部分は指定した要素の部分になるので、動的になります。
2.エラー解決策
このエラー「List index out of bounds: 0」の解決策は、要素を追加すれば回避できます。
下記の方法だとエラーが発生します。
このエラーを僕はよく、System.debugを貼る時にもやってしまいます。
1 2 |
List<Contact> contacts = new List<Contact>(); System.debug(contacts); |
しかし、下記の方法だと、ちゃんと要素を追加しているので問題ないです。
1 2 3 |
List<Contact> contacts = new List<Contact>(); contacts.add(new Contact()); System.debug(contacts[0]); |
3.まとめ
いかがでしたでしょうか。
単体テストをやっていると、このエラーに出会す事がまあまああります。
出くわさないように例外処理は書いておきたいですね。
他にも色々と標準機能やSalesforce機能について紹介しています。
そのまとめ一覧ページはこちらになりますので、よければ見てみてください。
ではでは!