你好,我是 Java 的初學者,遇到了一個問題。在下面有一組固定客人串列的代碼中,我如何列印這些人的電子郵件?電子郵件必須由 3 個名字數字和兩個姓氏數字組成,然后是@guest.com。所以它看起來像這樣:
在這個任務中,我必須使用方法:substring、split、toLowerCase。對不起,我的英語不完美。請幫助我試圖解決這個問題,但我無法管理它。
public class email {
public static void main(String[] args) {
String[] guests = { "Rock Adam",
"Stewart Thomas",
"Anderson Michael",
};
}
}
uj5u.com熱心網友回復:
當你像這樣卡住時,試著一點一點地分解問題。
你是說你不知道如何提取字串的一部分,也不知道如何列印。我很想給你書面說明,而不是你問題的完整答案,因為那樣你會學得更好。
- 您需要為 String[] 陣列中的每個 String 構造此電子郵件。在這里尋找在 java 中迭代陣列,例如https://www.geeksforgeeks.org/iterating-arrays-java/
- 對于每個“Rock Adam”形式的字串,您需要提取姓氏和姓氏。為此,您需要按空格拆分 String
" "。如何做到這一點 -如何按空間分割字串 - 當您按空間拆分時,您將獲得另一個包含兩個元素的陣列,第一個是姓氏,第二個是名字。使用陣列 indecies 來訪問它們。
- 當您訪問
firstName您的下一個問題時 - 我如何獲得該字串的前 3 個字符。如何訪問第 3 個或第 2 個是相同的問題,請參閱如何在此處執行此操作Extract first two characters in a String in Java - 現在您有了想要知道如何連接和列印它們的子字串。如何列印多個變數?答案在這里How to print multiple variables lines in Java。同樣將字串轉換為小寫,你可以在這里找到答案https://www.w3schools.com/java/ref_string_tolowercase.asp
嘗試在此之后自己做一些更多的作業,您將學到的不僅僅是復制粘貼別人會直接免費提供給您的內容。
uj5u.com熱心網友回復:
較低的代碼可以解決您的問題。String.split(" ") 在第一次出現空格時拆分字串。它回傳一個字串陣列,其中包含名稱的兩個部分。使用 String.substring() 您可以獲得字串的特定部分。
public static void main(String[] args) {
String[] guests = {"Rock Adam",
"Stewart Thomas",
"Anderson Michael"};
for(String guest : guests){
String[] name = guest.split(" ");
String email = name[1].substring(0,3).toLowerCase() name[0].substring(0,2).toLowerCase() "@guest.com";
System.out.println(email);
}
}
uj5u.com熱心網友回復:
下面的代碼正是你要找的(我猜)
String[] guests = { "Rock Adam",
"Stewart Thomas",
"Anderson Michael",
};
List<String> emailIdList = new ArrayList<>();
for (String guest : guests) {
String firstName = guest.split(" ")[1];
String lastName = guest.split(" ")[0];
String emailId = firstName.substring(0,2) lastName.substring(0,1) "@guest.com";
emailIdList.add(emailId);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/355589.html
