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