スレッド "main" で例外発生 java.lang.ArrayIndexOutOfBoundsException: 0 at One1.main(One1.java:3)
Java第1章後期演習をやっているときに、以下の問題に遭遇しました。
出題:ユーザーがコマンドラインで入力した24時間制の時刻を12時間制に変換するプログラムを作成しなさい。
私が書いたコードは以下の通りです。
<ブロッククオート
public class One1 {
<未定義
public static void main(String[] args) { {
<未定義
int time = Integer.parseInt(args[0])。
//入力されたコマンドライン引数を整数に変換します。
if (時間 <= 24 && 時間 > 12) {。
<未定義
System.out.println("24 時間制 " + time + "12 時間制に変換されたポイントは: " + (time - 12)+"point");
} else if (time <= 12 && time >= 1) {...
<未定義
System.out.println("24 時間制 " + time + "12 時間制に変換されたポイントは: " + time + "point ")となります。
} else {
<未定義
System.out.println("Please enter correct time in 24-hour format");
}
}
}
この時点で保存して実行すると、次のようなプロンプトが表示されます。
スレッド "main" java.lang.ArrayIndexOutOfBoundsException で例外が発生しました。0 at One1.main(One1.java:3)
調べてみると、コマンドライン入力に引数がなく、int time = Integer.parseInt(args[0]) となっていることが原因であることがわかりました。 文はargs[0]を使用しているので、String型の配列を入力する必要があります。
解決方法 : クラス(この問題で定義したクラスはOne1という名前です)の上で右クリック>Run as>Run configurations を選択し、"Arguments"のセクションを選択して、パラメータのセットを入力し、Run を実行します。
補足 : 今回のコマンドライン経由で取得した引数は文字列型であり、四則演算を行うには、まず数値型に変換する必要があります。IntegerクラスのparseInt()メソッドで括弧内の文字列を整数型に変換し、flaot.parseFloat()、Double.parseDouble()で括弧内の文字列をそれぞれ単精度実数、倍精度実数型に変換してください。
実行時に多くの例でこのようなことが起こることがわかりましたので、少し注意してみてください、この記事があなたの勉強になれば幸いです。
関連
-
Java Exceptionが発生しました エラー解決
-
JQuery DataTable 详解
-
Methodのinvokeメソッド実装のJavaリフレクション
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
あるコードに出会いましたが、何に使うのか理解できません。 List<String> list = new ArrayList<String>() { { a
-
起動時にEclipseエラーが発生しました。起動中に内部エラーが発生しました。java.lang.NullPoin: "Javaツーリングの初期化 "中に内部エラーが発生しました。
-
ローカルリソースのロードが許可されていない場合の解決策
-
トークン "{" のシンタックス エラー、このトークンの後に { があるはずです。
-
Swagger の @ApiModelProperty オブジェクト フィールドが表示されない
-
Spring MVC アノテーションエラーです。引数型[java.lang.String]の名前が利用できません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
eclipse で「アクセス制限: タイプ 'HttpServer' は API ではありません」というプロンプトが表示される。
-
Spring Boot による HTTPS アクセスの設定
-
final, finally, finalizeの違いについて話してください。
-
Enumとの組み合わせでswitchの使い方を一度覚えるために必要な定数式
-
JavaMailのメール送信が失敗するケースとその説明の分析
-
Spring boot runs with Error creating bean with name 'entityManagerFactory' defined in class path resource
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException: 1
-
xxx:jarのアーティファクトディスクリプタの読み込みに失敗した問題は解決しました。
-
spring-boot 401 このリソースにアクセスするには完全な認証が必要です エラー解決
-
Android TextViewの行間解析