Java.lang.ArrayIndexOutOfBoundsExceptionは異常なソリューションを報告し--java

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/xiaoke5491/article/details/101197682

最近のJavaの学習で要件を記述するために、行うために:文字の入力ラインを、それぞれ、統計は、その文字、スペース、数字や他の文字の数 Javaアプレットは、結果が報告された
スレッド「メイン」java.langの例外を。 ArrayIndexOutOfBoundsException:3
little_exercise_MYSELF.seven.main AT(seven.java:16)
などの例外。
検査及び試験の後、最終的な理由、見つかった
エラーコードを:

for(int i=0;i<=ch.length;i++){ 

配列のインデックスは0から始まるので、インデックスはch.length 0の範囲であるため() - 1(すなわち、配列の要素数-1)
修飾:

for(int i=0;i<=ch.length-1;i++){ 

プログラムが正常に実行することができます

ここに画像を挿入説明
第二の場合:上記のエラーの場合が作る、または配列インデックスが異常報告使用しないで
ここに画像を挿入説明
次のようにコードが与えられます。

for(int i=0;i<=b.length-1;i++){
   if(b[i]>b[i+1]){

間違った決意条件(IF)、およびIは=てb.length-1、iは+ 1 =てb.lengthが、アレイ内のB []は、このインデックスは、大きな範囲を超えた場合(インデックス範囲はまだ:0 b.lengtj-1に)、コードを変更するように

for(int i=0;i<=b.length-1;i++){
   for(int j=i+1;j<=b.length-1;j++)

サイクルのために、二重に対処するには。
要約:Javaでは、異常なアレイは一般的に可能性が高いいくつかの理由であると報告
ループ本体が決定される1)の範囲であってもよいループ変数は、配列インデックスの範囲を超えています。
2)使用されるループ変数の文は、ループ変数のスコープは、配列のインデックスを超えるが実現しないことができます。言った後、その残り

おすすめ

転載: blog.csdn.net/xiaoke5491/article/details/101197682