簡體   English   中英

分割用戶輸入的每個字符串,並帶有逗號錯誤

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM