import java.util.HashSet; import java.util.Iterator; public class z1949 { static HashSet<Integer>set=new HashSet<Integer>(); public static void main(String[] args) { int a[]={1,9,4,9}; order(a,0,a.length-1); Iterator <Integer>i=set.iterator(); while(i.hasNext()) { int num=i.next(); if(isPrime(num)) System.out.println(num); } } public static void order(int a[],int start,int end)//递归全排列 { if(start==end) { set.add(a[0]*1000+a[1]*100+a[2]*10+a[3]);//如果没有重复则添加 }else { for(int i=start;i<a.length;i++)//进行递归,把每种情况都执行一遍 { int temp=a[i]; a[i]=a[start]; a[start]=temp; order(a,start+1,end); temp=a[i]; a[i]=a[start]; a[start]=temp; } } } public static boolean isPrime(int n)//是否是素数 { for(int i=2;i<n;i++) { if(n%i==0) return false; } return true; } }