Android 无法使用parseInt将EditText转换为int

Android 无法使用parseInt将EditText转换为int,android,parsing,Android,Parsing,logcat显示Integer.Parse()函数无法将字符串转换为int或float,而我用java链接了xml文件。此外,我还将rate和quantity列的输入类型设置为number,这样用户就不可能输入int或float以外的任何内容。请帮忙。很长一段时间以来,我一直在努力让这段代码正常工作。但是我找不到解决办法 随函附上代码: public int initializeVars(){ int i; for(i=0;i<9;i++){ //item

logcat显示Integer.Parse()函数无法将字符串转换为int或float,而我用java链接了xml文件。此外,我还将rate和quantity列的输入类型设置为number,这样用户就不可能输入int或float以外的任何内容。请帮忙。很长一段时间以来,我一直在努力让这段代码正常工作。但是我找不到解决办法

随函附上代码:

public int initializeVars(){

    int i;
    for(i=0;i<9;i++){
        //items[i] is the AutoCompleteTextView array
        item[i]=items[i].getText().toString();
        iquant[i]=Integer.valueOf(quant[i].getText().toString());
        irate[i]=Float.valueOf(rates[i].getText().toString());

        if(item[i]=="")
            break;
    }
    return i;
}
}
public int initializeVars(){
int i;

对于(i=0;i,您可以通过

yourInt = Integer.parseInt(yourString);
youtFloat = Float.parseFloat(yourString);
我总是这样做,而且它是有效的。在float变量中,确保小数以“.”not“,”标记


您可能还希望尝试捕获NumberFormatException以避免解析时出现问题。

要避免此类情况,请使用这两个函数

对于Int

private int getIntFromString(String str){
    try{
        return Integer.parseInt(str);
    }catch(Exception e){
        return 0;
    }
}
浮球

private float getFloatFromString(String str){
        try{
            return Float.parseFloat(str);
        }catch(Exception e){
            return 0f;
        }
}

在所需位置调用这些方法

尝试使用
parseInt
方法而不是
valueOf
,并将解析代码保存在
Try{}…catch{}
块的
NumberFormateException

INT

try {
    myInt = Integer.parseInt(myString);
} catch(NumberFormatException e) {
}
try {
    myFloat = Float.parseFloat(myString);
} catch(NumberFormatException e) {
}
浮动

try {
    myInt = Integer.parseInt(myString);
} catch(NumberFormatException e) {
}
try {
    myFloat = Float.parseFloat(myString);
} catch(NumberFormatException e) {
}

我可以发送logcat截图。如果你愿意,请让我知道。不幸的是,我没有足够的声誉来发布一张图片。请在出现错误的地方发布行。不要输入完整代码。请发布logcat。我想从用户那里获得一些信息,格式为3列(名称、数量和价格)。还有一件事,是否建议像我以前那样以数组格式定义editText和textView变量?我也尝试过这种方法,但不起作用。顺便说一句,我找不到ValueOf()method和ParseInt()method之间的区别。