如何只列印第一個單詞的第一個字母和最后一個單詞的整個單詞?例如,我將請求用戶名輸入,如“輸入您的名字和姓氏”,然后如果我輸入我的名字,如“Peter Griffin”,我只想列印“P and Griffin”。我希望這個問題有意義。請幫忙。如您所知,我是一個完整的初學者。這是我的代碼:
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("Enter your first and last name");
String fname=scan.next();
}
uj5u.com熱心網友回復:
String 方法trim、substring、indexof、lastindexof,也許split應該讓你繼續前進。
uj5u.com熱心網友回復:
這應該可以完成作業(直接在此處輸入,因此可能存在語法錯誤)
String fname=scan.nextLine(); // or however you would read whole line
String parts=fname.split(" ");
System.out.printf("%s %s",parts[0].substring(0,1),parts[parts.length-1]);
接下來你必須做的:
parts檢查陣列中是否實際上至少有 2 個元素檢查第一個元素是否實際上至少為 1 個字符(無空部分)
檢查是否確實有要讀取的行
自己做下一個作業,否則你什么都不會
uj5u.com熱心網友回復:
我建議您觀看 subString(1, x) 和 indexOf(" ") 從索引 1 剪切到第一個空格。
或者這里是另一個例子,處理較低和多名稱:
String s = "peter griffin foobar";
String[] splitted = s.toLowerCase().split(" ");
StringBuilder results = new StringBuilder();
results.append(String.valueOf(splitted[0].charAt(0)).toUpperCase() " ");
for (int i = 1; i < splitted.length; i ) {
results.append(splitted[i].substring(0, 1).toUpperCase() splitted[i].substring(1) " ");
}
System.out.println(results.toString());
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/466530.html
標籤:爪哇
