我正在做一个android“数字猜测游戏”,它会生成一个介于1到30之间的随机数,并将其与用户的输入进行比较
(编辑文本输入类型:数字)
还有一个
文本框
它会告诉用户这个数字是大还是小。
我试图通过这样做将用户的输入与真实数字进行比较:
if (num_input == number) {
t_win.setVisibility(View.VISIBLE);
}
它显示了这个错误:
运算符“==”不能应用于“android”。小装置。编辑文本“,”int“
我试图通过以下方式将EditText更改为string或int来修复它:
改为int
@Override
public void onClick(View arg0){
s_title.setVisibility(View.INVISIBLE);
t_rules.setVisibility(View.INVISIBLE);
btn_start.setVisibility(View.INVISIBLE);
strt_title.setVisibility(View.VISIBLE);
t_introgss.setVisibility(View.VISIBLE);
num_input.setVisibility(View.VISIBLE);
// Generate random numbers
int number = 1 + (int)(30 * Math.random());
// Given trials
int trials = 3;
int i, guess;
int guessNum = Integer.parseInt(num_input); // Change to INT!
// Iterate over number of trials
for (i = 0; i < trials; i++) {
// If the number is guessed
if (guessNum == number) {
t_win.setVisibility(View.VISIBLE);
}
换成字符串
@Override
public void onClick(View arg0){
s_title.setVisibility(View.INVISIBLE);
t_rules.setVisibility(View.INVISIBLE);
btn_start.setVisibility(View.INVISIBLE);
strt_title.setVisibility(View.VISIBLE);
t_introgss.setVisibility(View.VISIBLE);
num_input.setVisibility(View.VISIBLE);
// Generate random numbers
int number = 1 + (int)(30 * Math.random());
// Given trials
int trials = 3;
int i, guess;
String guessNum = num_input.getText().toString(); //Change to STRING
// Iterate over number of trials
for (i = 0; i < trials; i++) {
// If the number is guessed
if (guessNum == str(number)) {
t_win.setVisibility(View.VISIBLE);
}
当我使用
Integer.parseInt();
它告诉我它可以应用于
编辑文本
当我试着把它改成字符串
.getText().toString();
它可以工作,但在操作员部分,我似乎无法更改
整数
串。
我对这个很陌生,任何信息都会有帮助!