如何拆分字符串并将其存储在数组中

时间:2013-04-18 09:04:38

标签: java arrays string

我尝试了以下示例,但它给出了以下示例 output[]。我已将字符串“1.0”传递给函数calculatePayout(),并希望将1存储在s[0]中,将0存储在s[1]

import java.util.Arrays;


    public class aps {

        public void calculatePayout(String amount)
        {
            String[] s = amount.split(".");
            System.out.println("output"+Arrays.toString(s));
        }

    public static void main(String args[])
    {
        new aps().calculatePayout("1.0");
    }
    }

5 个答案:

答案 0 :(得分:9)

方法split()接受正则表达式。正则表达式中的字符.表示“一切”。要使用.拆分字符串,您必须将其转义,即split("\\.")。需要第二个反斜杠,因为第一个斜杠用于正则表达式的转义,第二个转义为java编译器的斜杠。

答案 1 :(得分:4)

尝试转义点:

String[] s = amount.split("\\.");

由于点是regex中的“任何字符”。

答案 2 :(得分:2)

尝试amount.split("\\.")

Split方法使用正则表达式,因此您需要使用正确的语法并转义点。

答案 3 :(得分:1)

.是正则表达世界中的 metacharcter 或特殊字符。 String#split(regex)期望正则表达式作为参数,您必须使用反斜杠转义它或者按顺序使用字符类将其视为普通字符

amount.split("\\.");amount.split("[.]");

答案 4 :(得分:1)

尝试

amount.split("\\.")

split方法接受regular expression