Java 找不到变量

Java 找不到变量,java,android,Java,Android,我正在使用Android Studio构建一个简单的应用程序;这是我的相关代码: import java.util.Random; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); set

我正在使用Android Studio构建一个简单的应用程序;这是我的相关代码:

import java.util.Random;
public class MainActivity extends AppCompatActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    Random r = new Random();
    int num = r.nextInt(1000);
    EditText e = (EditText) findViewById(R.id.enterText);
    int userNum = Integer.parseInt(e.getText().toString());
    TextView info = (TextView) findViewById(R.id.userInfo);

    private void compare()
    {
        if(userNum > num)
        {
            info.setText("Your number is too high!");
        }
        else if(userNum < num)
        {
            info.setText("Your number is too low!");
        }
        userNum = Integer.parseInt(e.getText().toString());
    }

    while(userNum != num)
    {
        compare();
    }
}
它可能非常简单,但我似乎无法理解。

试试下面的代码

import java.util.Random;


    public class Sample extends AppCompatActivity {

        private int userNum;
        private int num;
        private EditText e;
        private TextView info;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            Random r = new Random();
            num = r.nextInt(1000);
            e = (EditText) findViewById(R.id.enterText);
            userNum = Integer.parseInt(e.getText().toString());
            info = (TextView) findViewById(R.id.userInfo);

        }

        private void compare() {
            if (userNum > num) {
                info.setText("Your number is too high!");
            } else if (userNum < num) {
                info.setText("Your number is too low!");
            }
            userNum = Integer.parseInt(e.getText().toString());

            while (userNum != num) {
                compare();
            }
        }
    }
import java.util.Random;
公共类示例扩展了AppCompatActivity{
私有int userNum;
私有整数;
私人编辑;
私有文本视图信息;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
随机r=新随机();
num=r.nextInt(1000);
e=(EditText)findViewById(R.id.enterText);
userNum=Integer.parseInt(例如getText().toString());
info=(TextView)findViewById(R.id.userInfo);
}
私有空比较(){
如果(userNum>num){
info.setText(“你的号码太高了!”);
}else if(userNum
试试:

private void compare()
{
随机r=新随机();
int num=r.nextInt(1000);
EditText e=(EditText)findViewById(R.id.enterText);
int userNum=Integer.parseInt(例如getText().toString());
TextView信息=(TextView)findViewById(R.id.userInfo);
如果(userNum>num)
{
info.setText(“你的号码太高了!”);
}
else if(userNum
使其全球化variable@WilliamMarkleyI那样做了,但没有help@WilliamMarkley这是我工作室的工作代码。您只需要将此代码复制到您的工作室,它将工作等待,这不是递归的吗?此代码将按照您的逻辑工作。不worries@WilliamMarkley
import java.util.Random;


    public class Sample extends AppCompatActivity {

        private int userNum;
        private int num;
        private EditText e;
        private TextView info;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            Random r = new Random();
            num = r.nextInt(1000);
            e = (EditText) findViewById(R.id.enterText);
            userNum = Integer.parseInt(e.getText().toString());
            info = (TextView) findViewById(R.id.userInfo);

        }

        private void compare() {
            if (userNum > num) {
                info.setText("Your number is too high!");
            } else if (userNum < num) {
                info.setText("Your number is too low!");
            }
            userNum = Integer.parseInt(e.getText().toString());

            while (userNum != num) {
                compare();
            }
        }
    }
private void compare()
{

Random r = new Random();
int num = r.nextInt(1000);
EditText e = (EditText) findViewById(R.id.enterText);
int userNum = Integer.parseInt(e.getText().toString());
TextView info = (TextView) findViewById(R.id.userInfo);


    if(userNum > num)
    {
        info.setText("Your number is too high!");
    }
    else if(userNum < num)
    {
        info.setText("Your number is too low!");
    }
    userNum = Integer.parseInt(e.getText().toString());
}

while(userNum != num)
{
    compare();
}