gpt4 book ai didi

java - 确定b是否是a的因子的有效方法?

转载 作者:行者123 更新时间:2023-12-01 12:44:06 26 4
gpt4 key购买 nike

这是我当前正在制作的计算器程序的一部分,这部分确定 b 是否是 a 的因子。另外,我是 Java 新手,这让我第三天学习它的语法。无论如何,我想知道哪种方法更有效地确定 b 是否是 a 的因子。是我们的模运算符(%)还是我的第二种方法???

此外,如果有比我想出的两种方法更有效的方法,请展示。

// for now I want the result to print out in the console
public class factornot {
public static void main(String args[]) {
int a = 56, b = 3; // just for testing purposes!
if((a != 0) && (a % b) == 0) System.out.println(b + " is a factor of " + a);
else System.out.println(b + " is not a factor of " + a);
// short-circuit and prevents a divide by zero error!


// is this better or worse, faster or slower ???

int d = (a / b), e = (d * b);
if((a - e) == 0) System.out.println(b + " is a factor of " + a);
else System.out.println(b + " is not a factor of " + a);
}
}

最佳答案

就基本计算而言,不会有太大差异。要确定 a == 0 mod b,必须执行除法并通过减法计算余数。

然而,运算符%为编译器提供了“在幕后”完成所有操作的机会,而不需要第二个的存储和获取(大概优化为任何可以快捷方式的内容)版本。

此外:代码越少,出错的机会就越少。直接方式提供了良好的可读性。

关于java - 确定b是否是a的因子的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24847613/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com