读取忽略特殊值的行

时间:2015-04-12 00:58:23

标签: java

如何在没有A B -> carry sum的情况下从->中提取每个字符串?因此,我只需要A B carry sum。怎么办呢?

A B -> carry sum作为String传递给方法。

public void parseContactsLine(String line)
{
    Scanner readLine = new Scanner(line);

    while(readLine.hasNext())
    {

    }
}

2 个答案:

答案 0 :(得分:2)

您可以使用split()方法分割字符串:

public void parseContactsLine(String line)
{
    Scanner readLine = new Scanner(line);

    while(readLine.hasNext())
    {
        String[] parts = line.split("->");
        int a = Integer.parseInt(parts[0].split("\\s+")[0]); // Split string by whitespaces
        int b = Integer.parseInt(parts[0].split("\\s+")[1]);            
        int carry = Integer.parseInt(parts[1].trim().split("\\s+")[0]);
        int sum = Integer.parseInt(parts[1].trim().split("\\s+")[1]);
        // Do whatever you want with a, b, carry and sum
    }
}

答案 1 :(得分:0)

你可以打破空格周围的字符串,忽略 - >你可以使用正则表达式,使用string.split函数,甚至迭代字符串并自己动手