import java.util.Scanner;
public class Test1C
{
public static void main(String[] args)
{
Scanner reader = new Scanner(System.in);
System.out.print("Enter an integer between 1 and 50: ");
double quo;
int num = reader.nextInt();
for(double a = 1; a <= num; a++)
{
quo = (num / a);
System.out.println(quo);
}
}
}
这是我目前根据输入的数字来评估商数列表的代码。现在我脑子里唯一关注的是如何将当前小数的整数转换成整数。但是,由此代码打印的双打(例如:1.333)很好。我无法弄清楚如何将整数小数(例如:12.0)转换为整数整数。有人能帮助我吗?
答案 0 :(得分:1)
Double d = new Double(1.25);
int i = d.intValue();
System.out.println("The integer value is :"+ i);
答案 1 :(得分:1)
是的,你可以:
String s = "1.333";
double d = Double.parseDouble(s);
int i = (int) d;
或
String s="1.333";
int i= new Double(s).intValue();
答案 2 :(得分:0)
没有通用的方法来检测double是否真的是一个整数,并且double和double或int的比较通常必须非常谨慎地处理,但对于程序中的数字范围(以及上限)可以大大提高),这将按你的意愿工作:
for(double a = 1; a <= num; a++) {
double quo = num/a;
int iquo = (int)quo;
if( iquo == quo ){
System.out.println(iquo);
} else {
System.out.println(quo);
}
}