入力された文字列と数値で数値のみ計算し代入したいです
Java(Eclips)を先月からやり始めまして、現在行っているプログラムが、入力された値が文字列で入力された場合でも計算ができるのか試していたのですが、どうにも上手くいかず整理ができなくなってしましました。
下記のような結果になってほしいのですが、エラーが出て進みません。
入力される値
入力する数:3
SET 1 10
SET 2 20
ADD 40
ADD 40 → 変数1の値を足して、変数2に代入
出力される値
変数1=10
変数2=50
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -3
at java.lang.String.substring(Unknown Source)
at Main.Calculation(Main.java:20)
at Main.main(Main.java:15)
該当のソースコード
import java.util.*;
public class Main {
public static void main(String[] args) {
ArrayList<String> strList = new ArrayList<String>();
Scanner sc = new Scanner(System.in); int value = sc.nextInt(); for(int i = 0; i <= value;i++) { String line = sc.nextLine(); strList.add(line); Calculation(strList.get(i)); } } public static void Calculation(String line) { System.out.println(line.substring(3)); }
}
試したこと
初めは、リストを使わずに入力のみで文字列を取り出し数値に変換しようとしましたができず、リストに格納して一つずつ取り出そうとしましたができず、初めからやり直して、一つずつ確認をしていると序盤の方からダメなことに気づき今にいたります。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー