这样判断素数打印出来的结果是: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));
}
}
}
}