Java方法链接

时间:2012-07-17 15:24:33

标签: java methods chaining

我有一行包含各种非分隔字段值的数据。

X55655PlateX58745CupX52689SaucerX52459SpoonH59876KnifeX59866Fork

我正在尝试使用substring和indexOf来提取数据,使用类似于下面的一系列语句。

dataField1 = substring.inputLine((indexOf("Marker1: ")+9),(inputLine.indexOf("Marker2:")-1));

我一直error:cannot find symbol指向substring。通常,这是我没有调用正确的java包,但我使用以下内容:

import java.util.*;
import java.io.*;
import java.nio.file.*;
import java.lang.*;

java.lang.*是字符串方法的所在,对吧?我也正在初始化String datafield1 = "";

dataField1 = inputLine.Substring((indexOf("Marker1: ")+9),(indexOf("Marker2:")-1));

导致indexOf收到cannot find symbnol错误。但是如果indexOf也是String的一个方法,那么需要去哪里?

我的程序似乎使用java documentation中所述的正确语法substring(x,y),但是,没有适用于我的故障排除的真实示例。

我已经回顾了this article,但它并没有让我更好地理解这些概念。

为什么这种情况会出现错误,我该如何防止错误呢?

3 个答案:

答案 0 :(得分:7)

应该在String对象上调用

substring。否则,它正在您当前的类中寻找一个名为substring的方法。

答案 1 :(得分:4)

substring()String的方法,应该是:

inputLine.substring(...

假设inputLineString个实例。

答案 2 :(得分:0)

试试这个。

String dataField1 = inputLine.substring((inputLine.indexOf("Marker1: ")+9),
                                        (inputLine.indexOf("Marker2:")-1));