Java Android-如何获取EditText(数字),然后将其转换为整数用于数学?

Java Android-如何获取EditText(数字),然后将其转换为整数用于数学?,java,android,integer,textview,android-edittext,Java,Android,Integer,Textview,Android Edittext,我想知道如何获取一个EditText区域,用户可以在其中输入一个数字,然后将其设置为整数,以便在程序中使用它进行加法、减法、除法,基本上,我需要测试输入,以便能够在代码中的计算器中使用,然后需要将其放入文本视图或字符串中,以便用户可以看到最终答案 更多信息: 我有三个EditText区域,用户必须填写这三个区域,然后按“equals”,它会告诉他们答案,所有的数学等都需要在代码中,这样用户只需输入信息,而不需要实际计算任何内容。 谢谢你的帮助,如果你需要更多的信息,请问我 这样做的最佳方法和代码

我想知道如何获取一个EditText区域,用户可以在其中输入一个数字,然后将其设置为整数,以便在程序中使用它进行加法、减法、除法,基本上,我需要测试输入,以便能够在代码中的计算器中使用,然后需要将其放入文本视图或字符串中,以便用户可以看到最终答案

更多信息: 我有三个EditText区域,用户必须填写这三个区域,然后按“equals”,它会告诉他们答案,所有的数学等都需要在代码中,这样用户只需输入信息,而不需要实际计算任何内容。 谢谢你的帮助,如果你需要更多的信息,请问我

这样做的最佳方法和代码将对我有很大帮助

我已经添加了建议的代码,但是我仍然在parseInt上得到一个错误,我仍然需要添加一个按钮来计算在EditText区域中输入的数字。我该怎么做?很抱歉,我对Java和Android开发感到非常抱歉

             package com.example.one;


             import com.example.one.R;

             import android.app.Activity;
             import android.content.Intent;
             import android.os.Bundle;
             import android.text.Editable;
             import android.view.View;
             import android.widget.Button;
             import android.widget.EditText;

             public class monthlyp extends Activity{

         @Override
        protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.monthlyp);


   EditText editone = (EditText) findViewById(R.id.editone);
   EditText editoneValue = (EditText) editone.getText();
   int editoneNum = Integer.parseInt(editoneValue);

    }
   ;

   }

您必须在EditText的属性中更改
输入类型
。对于数字,您有三种选择:
number
numberSigned
numberDecimal
。 这取决于你想要什么

然后,如果要将EditText上的字符串转换为整数,可以执行以下操作:

int value = new Integer(myEditText.getText().toString()).intValue;

首先,获取EditText的一个实例:

EditText myEdit = (EditText) findViewById(R.id.edittext1);
然后获取当前显示的字符串:

String myEditValue = myEdit.getText().toString();
然后将其解析为整数:

int myEditNum = Integer.parseInt(myEditValue);
我使用上面的方法获取用户输入的数字格式。但是,当我尝试使用setText()方法在TextView(textOut1)中显示int myEditNum时,我得到了setText方法的一个错误(表示:''无法在基元类型int''上调用setText(TextView))

我还尝试(在下面)将int myEditNum转换为字符串,然后将其显示为TextView,但仍然无法工作,因为我得到setText方法的以下错误:“”类型字符串“”的方法setText(TextView)未定义。 EditText myEdit=(EditText)findViewById(R.id.edittext1)

为什么会发生这种情况?我如何解决它?

您应该使用:

myEdit.setText(myEditValue);

myEditValue
myEditNum

“String myEditValue=myEdit.getText();”的字符串版本,-
EditText
getText()
方法返回类型为
Editable
的对象,您需要使用
toString()
来获取实际文本。非常感谢。要在用户按下“Equals”之类的按钮后向用户显示最终结果,我想将整数转换回字符串或文本视图吗?我知道我可以在程序/应用程序的数学部分使用整数,但我不知道如何在用户按下按钮后将计算结果的答案返回给用户。Austin,在计算最终结果后,只需使用.setText(result)方法(我假设您使用的是TextView)。不要担心将整数结果转换为字符串。您应该小心不要超过EditText中的integer.MAX_值,否则会出现NumberFormatException。
String myEditValue = myEdit.getText().toString();

int myEditNum = Integer.parseInt(myEditValue);


String texting = Integer.toString(myEditNum);

texting.setText(textOut1);
myEdit.setText(myEditValue);