import java.io.*;
class Input{
static private String s="";
static public void getIn(){
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
try{
s=in.readLine();
//in.close();这个地方如果不注释掉得话执行起来就是死循环了,注释掉就
//没事,请问谁知道具体原因么?

}catch(IOException e){

}
}
static public int back(){
getIn();
return Integer.parseInt(s);

}
class Result{
static public void getResult(int a){
if(((a-1)&(a))==0){
System.out.println("这个数是2的阶次方数!");
}else{
System.out.println("这个数不是2的阶次方数!");
}
}
}
public class PrintResult{
public static void main(String[] args){
while(true){
System.out.println("请输入一个整数!");
int test=Input.back();
Result.getResult(test);
if(test==0)
break;
}
}
}问题在红色字体处标注,在线等,谢谢了!!!!