問題へのリンク
解答コード
詳細
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
final String S = scanner.next();
final String T = scanner.next();
System.out.printf("%s@%s\n",S,T);
scanner.close();
}
}
解説
詳細
System.out.println(S + "@" + T);
でもいいんですが、個人的には書式がお勧めです。
String同士の演算だと、演算子毎に結合処理として新規のStringが生成されますので効率が悪くなります。2個だけなのでパフォーマンスとしては誤差ですが、これが癖づくと大規模なプログラムを組む際にボトルネックを生み出してしまう危険性があります。
StringBuilderを使うのもよいですが、出力時に表示方法を合わせるだけですので、書式を使う方が意図にあったプログラムでしょう。
"%s" は引数の値を文字として挿入する場所を示す文字です。
参考1
https://docs.oracle.com/javase/jp/18/docs/api/java.base/java/util/Formatter.html
注意点
printlnと異なり、printfには改行は含まれていませんので
改行文字
\n
を最後につけることを忘れないようにしましょう。
-
執筆時、paizaのJavaは18 ↩