1

我尝试做一件简单的事情,拆分文本并将结果放入数组中

public void testSplit(){
    String x="test-hi-thank";
String y[]=x.split("-");
    System.out.println(y.length);
}

testSplit();

我收到了这个错误

C:\temp>java -cp bsh-2.0b4.jar bsh.Interpreter test.bsh
Evaluation Error: Parse error at line 3, column 17.  Encountered: [

有什么可做的吗?

在一个类之外我们必须这样做: y=x.split("-");

4

2 回答 2

2

Beanshell 不支持变量名上的 [],并且约定不鼓励这种构造,因为括号实际上是类型的一部分,而不是变量名。

因此,在 Beanshell 中,您必须将其声明如下:

String[] y = x.split("-");

因为 BeashShell 的类型很松散,所以您可以完全删除 String[],它也可以正常工作。你也可以放弃一些其他的东西,这些东西可以让你摆脱 Java 的束缚,但是,随着脚本变得越来越复杂,你需要记住更多的东西。

testSplit(){
   x = "test-hi-thank";
   y = x.split("-");
   System.out.println(y.length);
}

testSplit();
于 2013-03-19T14:37:50.610 回答
0

我曾经遇到过这个问题,我使用以下策略解决了这个问题:


public void testSplit(){

    String x="test-hi-thank";
    String first  =x.split("-")[0];
    String second =x.split("-")[1];
    String third  =x.split("-")[2];
}

testSplit();

希望能帮助到你。

克莱门。

于 2013-06-13T09:11:33.240 回答