私はJavaが初めてで、私のコードよりも簡単な答えがあると思われる問題を解決しようとしています.問題は、ユーザーが入力した任意の長さの名前のイニシャルを完全な姓とともに出力することでした.しかし、これはString.split() または配列を使用せずに実行する必要があります。ユーザーに一度に 1 語ずつ名前を入力してもらいましたが、名前全体を一度に取得して必要に応じて実行する方法はありますか。私のコードは次のとおりです。
import java.io.*;
public class Initials {
public static void main(String[]args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the number of words your name contains");
int n=Integer.parseInt(br.readLine());
String str="";
for(int x=1;x<=n-1;x++){
System.out.println("Enter your name's word number:"+" "+x);
String s=br.readLine();
String st=s.toUpperCase();
char ch=st.charAt(0);
str=str+ch+".";
}
System.out.println("Enter your surname");
String sur=br.readLine();
str=str+" "+sur.toUpperCase();
System.out.println(str);
}
}