目次
標準入出力について
ターミナルに直接文字を打ち込んだり、表示させたりするときにするときに利用する。
業務だったら顧客が打ち込んだ住所などを受け取ったりするのに必要であるし、
普段だったら競技プログラミングで使用する(Javaでやる人は小数だと思うが)。
標準出力
観てみたほうが早いのでとりあえずサンプルコードを以下に示す。
public class Main {
public static void main(String[] args) {
System.out.println("このように表示されます");
}
}
このように表示されます
大切なのは System.out.println() である。ここに表示したい文章を入れればそれでOK!
プログラム内に変数があって(例えば年齢など)、それも一緒に表示したいときは+でくっつければよい。
public class Main {
public static void main(String[] args) {
int age = 20;
System.out.println("私は" + age + "歳です");
}
}
私は20歳です
他にも改行させたくなかったり、pythonのf文字列的な表記方法もある。
以下には代表的なメソッド、挙動、使用例を示す。
メソッド | 挙動 |
---|---|
println | 1行ずつ表示するとき |
改行させたくないとき | |
printf | 数字や文字列の結合をもっと簡単にしたいとき |
printlnメソッド
public class Main {
public static void main(String[] args) {
int age = 20;
System.out.println("こんにちは。");
System.out.println("私は" + age + "歳です。");
}
}
こんにちは。
私は20歳です。
printメソッド
public class Main {
public static void main(String[] args) {
System.out.print("こんにちは。");
System.out.print("改行できません。");
System.out.print("しかし、\nこうすると\n改行できます。");
}
}
こんにちは。改行できません。しかし、
こうすると
改行できます。
printfメソッド
public class Main {
public static void main(String[] args) {
int age1 = 1;
int days =365;
int age2 = 2;
String laugh = "ふふふ";
System.out.printf("私は%d歳です。",age1);
System.out.printf("しかし、\nあと%d日寝ると、%d歳になります。%s", days, age2, laugh);
}
}
私は1歳です。しかし、
あと365日寝ると、2歳になります。ふふふ
このprintfメソッドは少しめんどくさい部分もある。
受け取る変数型によって文字列に埋め込む記号が変わるのだ。
以下に表でまとめた。
記号 | 説明 | 使用例 | 結果 |
---|---|---|---|
%s | 文字列 | System.out.printf("%s","あい") | あい |
%d | 整数 | System.out.printf("あ%d",12) | あ12 |
%数d | 最小桁数を指定 | System.out.printf("あ%3d",12) | あ 12 |
%f | 浮動小数 | System.out.printf("%f",3.1415) | 3.1415 |
%.数f | 小数点以下を指定 | System.out.printf("%.2f",3.1415) | 3.14 |
他にもprintfには細かい仕様があるようだ。
こちらの記事によくまとまっている。
おわりに
この記事を書いている私自身、Javaのことはかなりちんぷんかんである。
したがって間違っていたり不適切な表現があるかもしれないが(絶対ある)、
その際はコメントでも残してくれると非常にありがたい。
そういえば競技プログラミングでよく用いられる半角スペース区切りで出力はよくわからなかった。