你能帮我写一个带有以下签名的方法:
public int method(double value)
返回值中的字符总数(包括小数点),例如:
method(5.0) - 3
method(1.2345) - 6
method(2.34) - 4
问题是方法(5)必须返回1而不是3,因为它是5.0
答案 0 :(得分:4)
将value参数更改为string并查找其长度,如下所示:
String valueString = value+"";
int count = valueString.length()
在方法()
中执行此操作<强>更新强>
public static int method(double value){
String temp;
if(value == (long) value)
temp = String.format("%d",(long)value);
else
temp = String.format("%s",value);
return temp.length();
}
-
Input: 5.01 gives Output: 4
Input: 5.0 gives Output: 1
答案 1 :(得分:1)
首先,将double转换为string,然后计算其大小。
String str = String.valueOf(yourDoubleNumber);
int charCount = str.length();
它会给你字符串的大小,即字符数
答案 2 :(得分:0)
双打和花车没有字符。他们有点。如果您要询问十进制数字,首先必须转换为十进制数。
答案 3 :(得分:-3)
使用int参数方法重载方法,然后像以前一样应用逻辑。
public int method(double d){
//your logic
}
public int method(int i){
//your logic
}`enter code here
答案 4 :(得分:-3)
int method(double value) {
if (value == (int) value)
return Integer.toString((int)value).length();
else return Double.toString(value).length();
}