在Java中分解质因数可以通过迭代或递归的方法实现。下面是一个简单的迭代方法,它从最小的质数2开始,逐步除以质数,直到无法整除为止,然后移动到下一个可能的质数因子。这个过程会一直重复,直到所有的质数因子都被找到。
```java
import java.util.Scanner;
public class PrimeFactorization {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个正整数: ");
int number = scanner.nextInt();
scanner.close();
System.out.print(number + " = ");
for (int i = 2; i <= number; i++) {
while (number % i == 0) {
System.out.print(i + "*");
number /= i;
}
}
System.out.println(); // 输出最后一个质数因子
}
}
```
这个程序首先提示用户输入一个正整数,然后使用一个for循环来遍历所有可能的质数因子。在循环内部,使用一个while循环来检查当前的数是否能被i整除。如果能整除,就打印出i,并将原数除以i。这个过程会一直重复,直到原数变为1,这意味着所有的质数因子都已经被找到。最后,程序会输出一个换行符,以便于阅读输出结果。
请注意,这个程序假设输入的数是一个正整数。如果输入的是负数或零,程序将不会正确工作。如果需要处理负数或零,可以在程序开始时添加一些输入验证。