这题目一看就知道需要用到递归, 没有学过递归的可以参考下, 就是没产生一个质数就把初始值/当前质数, 好了废话不多说代码整起。
List<Integer> decompositionIntegerList = new ArrayList<>();
private void decompositionOfPrimeNumbers(int number){
if(number > 2) {
int retaining = 0;
for (int i = 2; i <= number; i++) {
if(number % i == 0){
retaining = number / i;
decompositionIntegerList.add(i);
break;
}
}
decompositionOfPrimeNumbers(retaining);
}
}
然后我们简单的调用就行了
decompositionOfPrimeNumbers(90);
for (int i = 0; i < decompositionIntegerList.size(); i++) {
System.out.print(decompositionIntegerList.get(i) + "*");
}
喜欢的或者对你有帮助的可以给博主点支持喔