8
回答

这样判断素数打印出来的结果是:2-999,请问什么改代码才能出现正确的结果?谢谢!!
import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { String str="^1?$|^(11+?)\1+$"; Pattern pattern=Pattern.compile(str); for(int i=1;i<1000;i++){ String tt=Integer.toBinaryString(i); Matcher matcher=pattern.matcher(tt); if(!matcher.matches()){ System.out.println(Integer.parseInt(tt,2)); } } } }