java实现之100以内质数

思路二:优化后

/*
 * 质数:在大于1的自然数中,除了1和它本身以外不再有其他因数。
 * 思路:100以内的素数,100%(2—~99)求余,99%(2-98)求余,97%(2-96)。。。
 */

Num:for(int i=100; i>1;i--){
		for(j =2;j<=i;j++){
			if(i!=j && i%j==0)
				continue Num;
			if(i==j && i%j==0)
				System.out.println(i);
		}
	}

思路一

List<String> list = new ArrayList<String>();
//Num指定for循环名称
Num:for(int i=100; i>=1;i--){
		for(int j =2;j<=i;j++){
			if(i!=j && i%j==0){
				//非素数,跳出当前Num循环,验证下一个i
				list.removeAll(list);//清除list
				continue Num;//验证下一数,100,99,98,97...
			}
			//素数,能被自身整除
			if(i==j && i%j==0){
				list.add(i+"");
			}
		}
		if(list.size>0){
			System.out.println(list.get(0));
			list.removeAll(list);
		}
	}

你可能感兴趣的:(java)