내 애플릿에 이상하거나 신비한 일이 일어나고 있습니다! 그것은 숫자를 추측하는 사람을 포함하며, 난수와 비교됩니다. 네가 맞을 때까지 너는 추측을 계속한다. 당신이Java 애플릿 try/catch 문과 함께 이상한 일이 발생했습니다
ewjkgmvf
같은 것을 입력 한 경우에는 입력 필드에 NumberFormatException
을 얻을 것입니다. 이 문제를 해결하기 위해 나는 try ... catch를 사용하여 String으로 돌리는 것을 int에 포위했다. 예외가 잡히면 레이블에 "그 번호가 아닙니다!"라는 메시지가 표시됩니다. 대신, "너무 낮습니다. 다시 시도하십시오"는 추측 된 숫자가 너무 낮을 경우에만 발생하기로되어있었습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
짧은 프로그램 일뿐이므로 전체 프로그램을 게시합니다. 효과적으로 이전을 사용하여, number
에 어떤 값을 설정하지 발생합니다
try
{
number = Integer.parseInt(temp);
}
catch(java.lang.NumberFormatException e)
{
prompt.setText("That is not a number!");
}
if (x < number) {
//...
NumberFormatException
경우
import java.awt.*;
import java.applet.*;
import java.util.Random;
public class Number_guess_applet extends Applet{
private static final long serialVersionUID = 1L;
Button btnClick;
TextField entry;
Label prompt;
String temp;
Random r = new Random();
int x = r.nextInt(100);
int number;
int keepGoing = 1;
public void init(){
prompt = new Label("Guess the number");
add(prompt);
entry = new TextField(10);
add(entry);
btnClick = new Button("Check your guess");
add(btnClick);
}
public boolean action(Event evt, Object arg){
temp = entry.getText();
try
{
number = Integer.parseInt(temp);
}
catch(java.lang.NumberFormatException e)
{
prompt.setText("That is not a number!");
}
if (x < number)
prompt.setText("Too high. Try again.");
else if (x > number)
prompt.setText("Too low. Try again.");
else if (x == number)
prompt.setText("Found it!");
else
prompt.setText("Invalid or not a number. Choose a number between 1 and 100");
return(true);
}
}
애플릿을 다시 시작하려면 어떻게해야합니까? 내장 된 방법이 있습니까? – imulsion