从输入中找出数字的日志值

时间:2013-08-07 13:42:18

标签: java android

我有一个用户输入的edittext字段。用户可以输入最多十位数的值。当点击按钮时,我需要以双精度显示该数字的log [数学日志]值。

我在下面展示。
如果我输入xxxxxxxxxx [将此视为数字]
输出必须看起来像这样yy.yy。

package com.example.logvalue;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class Main extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
      EditText edit = (EditText) findViewById(R.id.editText1);
      final int noo = Integer.parseInt(edit.getText().toString());
       Button b1 = (Button) findViewById(R.id.button1);
        b1.setOnClickListener(new OnClickListener() {
            public void onClick(View arg0) {
        Toast.makeText(Main.this, String.format("%.2f", Math.log10(noo)) , Toast.LENGTH_LONG).show();
            }
        });



    }


}

1 个答案:

答案 0 :(得分:1)

使用String.format("%.2f", Math.log10(number))语法。 String类具有这种格式功能。

我假设你想要以10为基数的对数。

说明:String.format是来自C ++的传统printf的Java-equavalient。 %符号表示从参数列表中取出某些内容,该点意味着我们要指定小数位数,因此我们在该点之后放置2。 希望我帮忙。