我想写一个打印所有主要因素的程序,以及从用户输入中指定数字的最小素因子。 (例如,如果给出12,则素数因子为2,2和3.)我已经完成了一些搜索,但记录所有素数因子的程序的所有结果似乎都使用<>。出于某种原因,这不被认可。我想知道是否有其他方法呢?主要因素,替代钻石括号
编辑:我已经成功打印了最低的因子,但仍然无法打印所有素数因子。编辑代码:
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class PrimeFactor {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
System.out.println("Please enter an integer");
long n = in.nextLong();
System.out.println("Smallest prime factor of "+n+" is "+leastFactor(n));
}
public static ArrayList<Integer> leastFactor(long n) {
ArrayList primeFactors = new ArrayList<Integer>();
for (int i=2; i<=n; i++) {
if (n%i==0) {
primeFactors.add(i);
}
}
if(primeFactors.size() > 0){
return (primeFactors);
}
}
}
平方根所以你没有做什么研究<>手段和正确的方式来形成一个类型的Set/HashSet? – pczeus