对于String类型,方法split(String)是未定义的

时间:2010-04-27 20:16:26

标签: java eclipse-plugin pulse

我正在使用Pulse - Eclipse的插件管理器并已安装。我有Eclipse 3.5 for mobile development(Pulsar)配置文件以及其他几个配置文件。

我意识到split()方法通过以下代码调用字符串:

String data = "one, two, three, four";
data.split(",");

生成错误:“类型String”的方法split(String)未定义。我知道split()方法在Java的JRE 1.4之前不存在,也许可能是问题的原因。 问题是我不认为我安装了jre / sdk版本。也许有一个内置Pulsar配置文件并需要编辑 - 但我无法分辨需要调整的设置(以及在哪里)。我检查了Windows>偏好设置> Java>已安装的JRE,并将其设置为> = jre1.4。

5 个答案:

答案 0 :(得分:2)

我注意到“用于移动开发的Eclipse 3.5”。也许这个工具希望运行J2ME,我认为这是J2SE背后的几个问题。

This page为JME中的各种API提供了JavaDoc的链接。有几个版本,(按照CLDC和CDC下的链接查找java.lang.String)但据我所知,它们都没有定义String.split()。

答案 1 :(得分:2)

从Java 1.4版本开始引入

String.split方法,如果你有同样的工作要做,你可以试试这个:

public String[] splitStr(String str, String delim) {
        StringTokenizer stringTokenizer = new StringTokenizer( str, delim );
        String[] strArr = new String[stringTokenizer.countTokens()];
        int i = 0;
        while( stringTokenizer.hasMoreTokens() ) {
            strArr[i] = stringTokenizer.nextToken();
        }
        return strArr;
    }

答案 2 :(得分:1)

上次我查看(在Windows XP安装中),我发现默认安装的JVM为1.3。

你可以弹出一个“DOS shell”(错误,命令提示符)并输入java -version来查看至少关于PATH上的任何Java的真相。

我肯定会建议安装最新的JDK。 JDK包括一个编译器和其他工具,这对开发人员而不仅仅是一个JRE更有用。然后,您需要返回Eclipse的首选项并将其JDK / JRE设置指向新安装的JDK。

答案 3 :(得分:0)

String data = "one, two, three, four"; data.split(",");

你宣布

吗?

String []变量

示例 String[] variable = data.split(","); for(String value: variable){         System.out.println(value); }

我试过它的工作

答案 4 :(得分:0)

我遇到了同样的问题,但是它是replaceAll(arg1,arg2)方法的问题,当我更改jre version的顺序时解决了。例如,我使用jre 8,那么order应该在java构建路径中:在“ order and export”中排名第一。 JRE库

相关问题