从字符串中删除字符代号为1

时间:2014-05-07 21:35:04

标签: java string int

我试图从包含数字的字符串中删除%符号,例如80%。我试图获取数字并丢弃%并将其转换为int。我试过了:

String sPorcentage = findECor1().getSelectedItem().toString();
int porcentage = Integer.parseInt(sPorcentage.replaceAll("%", ""));
zona1.moveAllCurtains(porcentage);

它有效,但控制台说:

697: error: cannot find symbol
    [javac]         int porcentage = Integer.parseInt(sPorcentage.replaceAll("%", ""));
    [javac]                                                      ^
    [javac]   symbol:   method replaceAll(String,String)
    [javac]   location: variable sPorcentage of type String

BUILD FAILED

帮助表示赞赏!

4 个答案:

答案 0 :(得分:0)

我认为您可以使用以下代码而不是您的代码。我想它会服务于你的目的:

String str = "80%";
int perc=Integer.parseInt(str.split("%")[0]);
System.out.println(perc);

以上代码段会为您提供' 80'作为输出,也是整数变量。

答案 1 :(得分:0)

使用StringUtils.replaceAll(sPorcentage, "%", "");

答案 2 :(得分:0)

Shai已经回答了这个问题,代号不支持某些字符串函数,如replaceAll,split。但您可以使用他们提供的StringUtil类。 StringUtil.replaceAll()将执行您想要的操作。

StringUtil.replaceAll(String source, String pattern, String replace);

source - 字符串源

pattern - 要在源中替换的字符串

替换 - 替换字符串

这应该可以正常工作。

答案 3 :(得分:-1)

做一个

int porcentage = Integer.parseInt(findECor2().getSelectedItem().toString().replaceAll("%", ""));

应该有效。但是,您粘贴的错误表示未定义变量sPorcentage。

尝试在

中定义它
        String sPorcentage = "80%";
        int porcentage = Integer.parseInt(sPorcentage.replaceAll("%", ""));
        System.out.println(porcentage);