Part 02 Chapter 05
プログラムの引数を使って具体的な値は実行時に外から渡す方法
こうすることで値を変えて計算する時、いちいちソースコードを書き換えないでいいので便利。ここではJava標準クラスライブラリのクラスを利用します。
Javaコマンドに引数を渡すには、ターミナルで実行するときに
java <クラス名> <引数1> <引数2>・・・
// javaコマンドに引数を渡す
public class Sample {
public static void main(String args) {
System.out.println("args0=" + args[0]);
System.out.println("args1=" + args[1]);
}
}
➜ javac Sample.java
➜ java Sample aaa bbb
args0=aaa
args1=bbb
プログラム中で続けて利用するような場合の一例
String s0 = args[0];
String s1 = args[1];
// プログラム中で続けて利用する
public class Sample_b {
public static void main(String args) {
String s0 = args[0];
String s1 = args[1];
System.out.println("s0=" + args[0]);
System.out.println("s1=" + args[1]);
}
}
// この args[数字] というような<変数名>[<数字>]という書き方は
//「配列」というデータ構造の書き方です
➜ java Sample_b aaa bbb
s0=aaa
s1=bbb
引数を数字に変換する
引数は文字列(String型)で渡されるので数字の計算を行いたい時は文字を数字に変換する必要があります。
文字列(String型)を整数(int型)に変換する書式は
int <数字> = Integer.parseInt(<文字列>);
// 引数を文字列に変換する(Integer.ParseInt 関数)
public class Sample2 {
public static void main(String[] args) {
int num = Integer.parseInt(args[0]); // 文字列を整数に変換
System.out.println(num + 10); // 数字として計算
System.out.println(args[0] + 10); // 文字列の結合として表示
}
}
➜ javac Sample2.java
引数を7として実行...
➜ java Sample2 7
17
710
17は数字として計算、710は文字列として連結
Integer.parseIntについて
「IntegerクラスのparseIntメソッドを呼び出す」という処理になります。
- Integerはクラス、persIntはIntegerクラスの中のメソッドの1つ
- クラスはJavaのプログラムの単位で、メソッドはクラスの中の処理を行う単位です
- クラスのメソッドを呼び出す場合は、以下のように記述します
- <クラス名> . <メソッド名>
- ちなみに System や String もJava標準ライブラリの中のクラスの1つです
- メソッドには引数や戻り値を持つものがある
- 引数とは、メソッドに与える入力値
- 戻り値とは、メソッドで処理した結果を返す値
- Integer.perseIntメソッドは引数と戻り値を持ち、引数は文字列で戻り値は数字です
- Integer.parseIntメソッドを使って文字列を数字に変換できる
学習テキスト