public static void gramstoAtoms()
{
System.out.println("Enter Amount of grams");
Scanner keyboard = new Scanner(System.in);
long x = keyboard.nextLong();
System.out.println("Enter Unit Grams");
long y = keyboard.nextLong();
long result = x/y;
long answer = result*60200000000000000000000;
System.out.println(answer + "Atoms");
}
如何更改此代码以免出现整数太长错误?
只需使用 BigInteger 而不是 long
BigInteger bi=new BigInteger("6020000000000000000000");
对于你的方法:
public static void gramstoAtoms()
{
System.out.println("Enter Amount of grams");
Scanner keyboard = new Scanner(System.in);
String x = keyboard.nextLine();
System.out.println("Enter Unit Grams");
String y = keyboard.nextLine();
BigInteger result = new BigInteger(x).divide(new BigInteger(y));
BigInteger answer = result.multiply(new BigInteger("60200000000000000000000"));
System.out.println(answer + "Atoms");
}
如果您的 x
和 y
很小,您可以将它们与简单的 long 一起使用,但是当乘以 602......0000 时使用大整数