Java 如何将EditText中的输入存储到变量?

Java 如何将EditText中的输入存储到变量?,java,android,textfield,Java,Android,Textfield,我是Java的初学者,尝试创建随机数生成器,但我似乎不知道如何将EditText的输入存储到变量中。这是我的密码: Long MinNb; Long MaxNb; EditText RndNbGenNbs1, RndNbGenNbs2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.la

我是Java的初学者,尝试创建随机数生成器,但我似乎不知道如何将EditText的输入存储到变量中。这是我的密码:

Long MinNb;
Long MaxNb;

EditText RndNbGenNbs1, RndNbGenNbs2;




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


    RndNbGenNbs1 = (EditText) findViewById(R.id.RndNbGenNbs1);
    RndNbGenNbs2 = (EditText) findViewById(R.id.RndNbGenNbs2);
    final Button RndNbGenBtn1 = (Button) findViewById(R.id.RndNbGenBtn1);

    RndNbGenNbs1.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
} 

提前谢谢

那么您有两个编辑文本,用户使用哪一个?由于您使用的是onchange listner,这意味着一旦editText被更改,它应该做些什么。 你的意图是什么

您可以使用:

Long myNum=Long.parseInt(RndNbGenNbs1.getText().toString())

如果解析时出现问题,您需要捕获NumberFormatException,因此请使用:

try {
Long myNum = Long.parseInt(RndNbGenNbs1.getText().toString());
} catch(NumberFormatException nfe) {
System.out.println("Could not parse " + nfe);
} 

您可以通过以下方式获取EditText的文本: 字符串strNumber=editText.getText().toString(); 然后,对于转换为整数,使用Integer.valueOf(strNumber);或
Integer.parseInt(strNumber)

两个RNDNBGENBS1 MinNumber RNDNBGENBS2 MaxNumber。我可以用long保存吗?long num=long.parseLong(editText.getText().toString());