[英]Splitting every String the user enters with a comma error
我應該用逗號分割用戶輸入的每個字符串。 例如,如果用戶輸入“兔子”,則應該將其打印為“ R,a,b,b,i,t”
為此,我搜索了拆分方法String.split();。
我寫的代碼如下
import java.util.*;
class Split{
public static void main(String [] args){
Scanner input = new Scanner(System.in);
System.out.println("Enter a String");
String str= input.nextLine();
printLetters(str);
}
public static String[] printLetters (String a){
return a.split(",");
}
}
實際上,我應該使用接受Strings的方法來編寫代碼,但是當我編寫String.split()
,它說我必須使用String [],因此我只是將其更改為String []。
但是該代碼沒有輸出任何內容。 我想知道為什么會這樣,也想知道如何使用公共靜態String完成此任務。
我知道有很多與此相關的文章,但是我找不到符合要求的任何東西,這是使用公共靜態String的。
我也沒有學習split方法,所以說實話我不應該使用它。
這是我參加計算機科學專業的第一年,我所知道的唯一內容是循環,如果還有循環嵌套等等。
最好不要使用split方法,但是可以使用它,因為我也對此很好奇。
先感謝您 :)
據我所知,您正在嘗試獲取一個輸入字符串,並在每個字符后返回一個帶有插入逗號的新字符串。
String.split()
所做的事情完全不同。 例如,如果我有“ R,a,b,b,i,t”,則可以將String.split()與分隔符一起使用,
以獲取[“ R”,“ a”,“ b”,“ b” , “回來了。
解決您的問題的一種簡單方法是逐個字符地遍歷輸入字符串,然后在除最后一個字符之外的每個字符之后,在返回字符串中添加逗號。
由於您的工作實際上是自己完成,因此我不會發布代碼解決方案。 但是,我希望我的解釋消除了您的誤解,足以讓您編寫解決方案。
public static void printLetters (String a){
String output = "";
for (int i=0; i<a.length(); i++)
{
output += a.charAt(i);
if (i != a.length()-1)
output += ",";
}
System.out.println(output);
}
請參閱@Andrew Fan的答案。 它描述了split方法的作用。 您需要執行的操作與此相反。 您可以使用for循環或while循環。
*由於您是編程新手,
output += ","
是相同的
output = output + ","
使用String.join()
。
import java.util.*;
class Split{
public static void main(String [] args){
Scanner input = new Scanner(System.in);
System.out.println("Enter a String");
String str= input.nextLine();
String word = printLetters(str);
System.out.println(word);
}
public static String printLetters (String a){
return String.join(", ", a.split(""));
}
}
有關更多信息,請參見String.join()和String.split() 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.