gpt4 book ai didi

java - 如何在 Java 中将 double (或字符串)四舍五入到小数点后两位?

转载 作者:行者123 更新时间:2023-11-29 21:11:32 26 4
gpt4 key购买 nike

<分区>

虽然 StackO. 中回答了许多舍入问题,但我无法将其完全转化为我的多部分问题。 (我不确定为什么我的帖子顶部的链接说“答案在这里”......因为这对我来说更像是一种资源,对于初学者来说,很难筛选。我不会只是通过查看所有对话并分析该页面上的 RoundingMode 链接,得出了某人在我的帖子中提出的答案。我看到了部分正确的代码,但只有在有人向我指出之后由知道答案的人提供。)

1. 我需要四舍五入我的 finalBill TextView 字段,以便保留 2 位小数。我听说使用 BigDecimal 很好,但不知道如何编写它,或者将它放在我的代码中的什么位置(我是初学者)。

2. 在转换为字符串之前,将双变量(在我的 onClick 方法中)四舍五入会更明智吗?或者将以字符串形式(在 finalBill TextView 字段中)提供的最终答案四舍五入会更好吗?

现在,我得到的最终答案后面有很多很多小数。我只需要 2 个。

背景:我正在创建一个小费计算器,当对每个按钮(10%、15% 和 20%)执行 onClick 方法时...这应该计算新的总账单包括提示,并以不超过 2 个小数点的数字给出数字答案(已转换为 TextView)。感谢您的帮助!

这是我的代码:我只包含了包含第一个方法 onTen 的金额,因为这个方法是计算小费的地方,也是需要进行舍入的地方。 (为简单起见,未包括其他按钮)。

package com.example.nonitips;

import java.math.BigDecimal;
import java.math.RoundingMode;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

private EditText originalBill;
private double billWithTip;
String billString;
private TextView finalBill;
private Button btnTen;
private Button btnFifteen;
private Button btnTwenty;
double rounder = billWithTip;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
originalBill = (EditText)findViewById(R.id.originalBill);
}

public void onTen (View v) {
//Toast.makeText(this, "Tipping at 10%", Toast.LENGTH_SHORT).show();

btnTen = (Button)findViewById(R.id.btnTen);
//The button gets the setOnClickListener
btnTen.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
double bill = Double.parseDouble(originalBill.getText().toString());
billWithTip = bill * 1.10;
//Turns the answer back into a string
String billString = String.valueOf(billWithTip);
finalBill = (TextView)findViewById(R.id.finalBill);
finalBill.setText(billString);
}
});
}

}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com