0

私のデータは次のようなものです:

Smith, Bob; Data; More Data
Doe, John; Data; More Data

以下を見ると、FullName を最初と最後に分割しようとしていることがわかります。エラーは次のとおりです。

「String 型のメソッド split(String) は、引数 (char) には適用できません」

String line = scanner.nextLine();
String[] data = line.split(";");
String[] fullName = data[0].split(',');
4

3 に答える 3

9

エラーは非常に簡単に修正できるとコメントで説明しました: ','",".

なぜそうなったのか、少しだけ詳しく説明します。'Java では、 s で囲まれた単一の文字は文字リテラルであり、sで囲まれた文字列リテラルとは大きく異なります"。たとえば、Python の世界から来ている場合、これは慣れるまでに時間がかかる場合があり'"基本的に同義語として使用できます。

いずれにせよ、 の 1 引数split()メソッドは、正規表現として解析される aのみString受け入れます。そのため、二重引用符が必要です。String

于 2013-09-27T02:24:59.057 に答える
1

一重引用符を二重引用符に切り替えます

String[] fullName = data[0].split(",");

于 2013-09-27T02:23:16.807 に答える
0

String.split(String)は、String を唯一のパラメーターとして受け取ります。

public String[] split(String regex)

    Splits this string around matches of the given regular expression.

    This method works as if by invoking the two-argument split method with the
    given expression and a limit argument of zero. Trailing empty strings are
    therefore not included in the resulting array.

    The string "boo:and:foo", for example, yields the following results with
    these expressions:

        Regex   Result
        :   { "boo", "and", "foo" }
        o   { "b", "", ":and:f" }

    Parameters:
        regex - the delimiting regular expression 
    Returns:
        the array of strings computed by splitting this string around matches
        of the given regular expression 
    Throws:
        PatternSyntaxException - if the regular expression's syntax is invalid
    Since:
        1.4
    See Also:
        Pattern
于 2013-09-27T02:23:56.553 に答える