使用toString,android的小数位数

phi*_*181 1 double android tostring

我正在创建一个简单的程序,对用户在EditText视图中输入的值执行简单的数学函数.前两个EditText视图包含整数,最后一个可能是十进制,因此答案也可能需要是十进制形式,所以我将和(vis)设置为double,但是如何将小数位数限制为四?一切都运行正常,答案只是很多小数位!

这是我的代码:

public void onClick(View v) {
            String a,b,t;
            double vis;

            EditText txtbox1 = (EditText)findViewById(R.id.A);
                EditText txtbox2 = (EditText)findViewById(R.id.B);
                EditText txtbox3 = (EditText)findViewById(R.id.t);
                TextView tv = (TextView) findViewById(R.id.Answer);

            a = txtbox1.getText().toString();
            b = txtbox2.getText().toString();
            t = txtbox3.getText().toString();

            vis = ((Integer.parseInt(a)*1) + (Integer.parseInt(b)*2)) /       (Double.parseDouble(t));
            tv.setText(double.toString(vis));       
    }
}
Run Code Online (Sandbox Code Playgroud)

非常感谢!

ant*_*nyt 12

您可以使用String.format()以确保您的输出中只有4个小数位.只需用最后一行替换即可tv.setText(String.format("%.4f", vis));.

有关如何使用此目的的更多详细信息,请参阅http://download.oracle.com/javase/tutorial/java/data/numberformat.htmlString.format().