将输入的数字乘以android

时间:2015-12-03 14:01:04

标签: android

我正在开发一个Android应用程序,需要一些计算代码的帮助。用户需要在文本字段(EditText)中输入值1-5000000,按下按钮(计算),当发生这种情况时,输入的数字需要乘以10%,答案显示在屏幕上的文本字段中(EditText上)。 以下是我正在处理的代码:

    public void operation(){
    if(optr.equals("*")){
        amt = Integer.parseInt(num.getText().toString());
        amt = num * 10%;
        num1.setText(Integer.toString(amt));
    }

5 个答案:

答案 0 :(得分:2)

试试这个:

int amt = Integer.parseInt(num.getText().toString());
int result = amt/10;

顺便说一句,您试图将您的EditText乘以其代码中的值。

答案 1 :(得分:2)

使用以下代码:

public void operation(){
    if(optr.equals("*")){ // what is the optr?
        amt = Integer.parseInt(num.getText().toString());
        amt *= 10%; //You must use the value here, not the EditText
        num1.setText(String.valueOf(amt));
    }
}

答案 2 :(得分:0)

试试这个; %不是编程上下文中的百分比运算符。

public void operation(){
if(optr.equals("*")){
    amt = Integer.parseInt(num.getText().toString());
    amt = num / 10;
    num1.setText(Integer.toString(amt));
}
}

答案 3 :(得分:0)

您需要在此处的答案中添加文本更改侦听器:android edittext onchange listener

你也可以使用RXJava和RXbinding来创建一个observable,它可以在每次更改时发出edittext的值

编辑:没关系,没注意到你是从一个方法

运行它

答案 4 :(得分:0)

在Java中,您不能直接乘以10%来获得任何数字的10%。

通过评论您的行,您的代码已经发生了变化。 考虑浮动作为输入。

public void operation(){
    if(optr.equals("*")){
        //amt = Integer.parseInt(num.getText().toString());
        // amt = num * 10%;
        amt = Float.parseFloat(num.getText().toString());
        amt = num/10;
        num1.setText(amt+"");

        //num1.setText(Integer.toString(amt));
    }
}