当前位置: 技术问答>java相关
又一道很菜的问题
来源: 互联网 发布时间:2015-01-04
本文导语: input= (float)System.in.read(); intpart=Float.intValue(input); 原意是想把input给转成int的,但是。。 E:java>javac Float2int.java Float2int.java:11: 不能解析符号 符号:方法 intValue (float) 位置:类 in java.lang.Float intpart=Float.intValue(inpu...
input= (float)System.in.read();
intpart=Float.intValue(input);
原意是想把input给转成int的,但是。。
E:java>javac Float2int.java
Float2int.java:11: 不能解析符号
符号:方法 intValue (float)
位置:类 in java.lang.Float
intpart=Float.intValue(input);
大家看看怎么回事?
intpart=Float.intValue(input);
原意是想把input给转成int的,但是。。
E:java>javac Float2int.java
Float2int.java:11: 不能解析符号
符号:方法 intValue (float)
位置:类 in java.lang.Float
intpart=Float.intValue(input);
大家看看怎么回事?
|
你将input造型成了一个float,这个是一个基本类型。并不是一个对象类型,只有对象类型Float才能用intValue()方法,而且我觉得你intValue()方法的用法也错了。不可以直接将一个input放在里面的。只有static的方法也可以象类名.方法名这样调用,而intValue()只不过是一个public方法当然不可以用了。正确的用法:
input= (float)System.in.read();
Float f = new Float(input);
intpart=f.intValue();
我也是个菜鸟,不知道上面的回答是不是正确,请自行试验
input= (float)System.in.read();
Float f = new Float(input);
intpart=f.intValue();
我也是个菜鸟,不知道上面的回答是不是正确,请自行试验
|
1.float是基本数据类型,不能用来做强制类型转换
2.intValue()不是静态方法,不能用类名调用,像Integer.parseInt()就可以。
解决方法:
System.out.read()返回值本身就是int型
你可用try{
int intpart=System.in.read();
}catch(IOException ioe){}
2.intValue()不是静态方法,不能用类名调用,像Integer.parseInt()就可以。
解决方法:
System.out.read()返回值本身就是int型
你可用try{
int intpart=System.in.read();
}catch(IOException ioe){}