다음 랜덤함수에서, 아래와 같이 실행하면, 문제가 없는데..
n은 전역변수.
//double d = Math.random();
//Random rnd = new Random();
n = new Random().nextInt(501)+500; //int k = rnd.nextInt();
//int p = rnd.nextInt(500);
//int n = rnd.nextInt(1000 - 500 + 1) + 500;
System.out.println("< n >> : n" + n);
다음과 같이 실행을 하면, random 함수는 제대로 생성이 되나,
myButtonClick 에서 n값이 0으로 출력됨.
//double d = Math.random();
Random rnd = new Random();
// n = new Random().nextInt(501)+500;
int k = rnd.nextInt();
int p = rnd.nextInt(500);
int n = rnd.nextInt(1000 - 500 + 1) + 500;
System.out.println("< n >> : n" + n);
Button.OnClickListener myButtonClick = new Button.OnClickListener() {
public void onClick(View v){
String s;
Counter++;
int p = Integer.parseInt(edit.getText().toString());
System.out.println("< ppp >> "+ p);
System.out.println("<< n >>>>>"+ n );
if ( p < 500 || p > 1000)
s = "입력한 값이 500 - 1000 을 벗어났습니다. " ;
else if ( p == n )
s = Counter + "번째에 맞추셨습니다";
else if( p > n )
s = p + " 보다 작은 값 " ;
else
s = p + "보다 큰 값";
tResult.setText(s);
}
};
댓글 없음:
댓글 쓰기