对于参数类型double,EditText,运算符*未定义

Bra*_*ser -1 java android operators

我真的不确定为什么会出现这个错误.它可能很简单,但我是新手.

final Button calculate = (Button) findViewById(R.id.calculate);
calculate.setOnClickListener(new View.OnClickListener() {
        // Implement the OnClickListener callback       
        private void onClick(Button calculate) {
                double perimeter = 2 * (Math.PI * entry); //error on this line
                System.out.print(perimeter);

                }

        public void onClick(View v) {
        // TODO Auto-generated method stub
            }
        }

    );
Run Code Online (Sandbox Code Playgroud)

Bri*_*ach 5

它似乎entry是一个EditText对象...你不能成倍增加.

我将让你想乘什么是一个受过教育的猜测在那EditText.查看javadoc,您需要获取文本entry.getText().toString(),并将其转换为数字类型(前提是文本表示数字类型).

double myInputDouble = Double.parseDouble(entry.getText().toString());
Run Code Online (Sandbox Code Playgroud)

(或者Integer.parseInt()如果那是你所期待的)

http://developer.android.com/reference/android/widget/EditText.html
http://docs.oracle.com/javase/6/docs/api/java/lang/Double.html
http:// docs. oracle.com/javase/6/docs/api/java/lang/Integer.html