Java 最大打印双精度和整数
Java maximum printing doubles and ints
我有一个 max 函数,它接受 5 个输入并根据用户输入的内容打印最大值。例如:
输入:1 2 3 2.4 0.2
输出:3(整数)
或
输入:1.7 2 3 4.0 3.2
输出:4.0(双)
我不知道该怎么办。当 4.0 == 4 时,第二种情况会发生错误。我该如何绕过它?
max=(double) i;
System.out.print(" "+i);
if (Math.round(max) == max) {
System.out.print(Math.round(max));
} else {
System.out.print(max);
}
在数字的字符串表示形式上的循环 运行 中,只保留最大的字符串及其解析的双精度值。然后最后只打印最大值对应的字符串。
double max = -Double.MAX_VALUE;
String smax = null;
for (String s: args) {
double d = Double.parseDouble(s);
if (d > max) {
smax = s;
max = d;
}
}
System.out.println(smax);
我有一个 max 函数,它接受 5 个输入并根据用户输入的内容打印最大值。例如:
输入:1 2 3 2.4 0.2
输出:3(整数)
或
输入:1.7 2 3 4.0 3.2
输出:4.0(双)
我不知道该怎么办。当 4.0 == 4 时,第二种情况会发生错误。我该如何绕过它?
max=(double) i;
System.out.print(" "+i);
if (Math.round(max) == max) {
System.out.print(Math.round(max));
} else {
System.out.print(max);
}
在数字的字符串表示形式上的循环 运行 中,只保留最大的字符串及其解析的双精度值。然后最后只打印最大值对应的字符串。
double max = -Double.MAX_VALUE;
String smax = null;
for (String s: args) {
double d = Double.parseDouble(s);
if (d > max) {
smax = s;
max = d;
}
}
System.out.println(smax);