Java在方法之间传递参数
我是从Java开始的,有人给了我一个练习来编写一个简单的ATM。职能包括:Java在方法之间传递参数,java,argument-passing,Java,Argument Passing,我是从Java开始的,有人给了我一个练习来编写一个简单的ATM。职能包括: 记住所有者-检查 开立账户,并可通过构造函数直接存款-支票 可以取款可以存款-支票 能够取消该帐户,并且任何后续操作都会遇到 抛出新的非法状态异常-检查 账户中最多可接受10万美元,并告诉运营商他们是否试图超过限额,以及他们可以存多少钱,直到他们的账户达到限额支票(某种程度上) 提示包括:人们希望看到100.00形式的货币,但这不利于Java计算,因此请保持内部机器以美分(瑞士的Rappen)运行,任何外部消息以美元和美
/**
*@作者(Daniel.l。einars@gmail.com)
*@version(1.0)
*
*不起作用的事情:
*在方法之间传递参数。我做错了什么?
*在RAPPEN和FRANKEN&RAPPEN之间转换。始终存在双精度VS.整数的问题
*/
公共类Aufgabe2a
{
私人国际kontostand;
私人双kontostandInFranken;
私有字符串kontoInhaber;
私有布尔kontoSaldiert;
/**
*建造师
*/
公共Aufgabe2a(字符串kontoInhaber,双kontostandInFranken)
{
this.kontoInhaber=kontoInhaber;
布尔kontoSaldiert=false;
this.kontostand=kontostand;
/**
*第一期。我似乎无法将美分转换为美元和*美分
*/kontostand=(int)kontostandInFranken*(int)100;
}
/**
*厄姆·格利赫特·康托因扎伦根
*/
格尔登扎伦公共酒店(格尔登扎赫尔特酒店){
国际单项体育联合会(geldEingezahlt 10000000){
System.out.println(“你的名字是10万瑞士法郎。你的名字是瑞士法郎”+kontostandInFranken(kontostand)+
(100000-kontostandInFranken)+“einzahlen”);
}
else kontostand=(kontostand+geldEingezahlt);
返回kontostand;
}
/**
*埃尔姆·格利赫特·格尔德·阿祖赫本
*/
格尔达赫本公共区(格尔达赫本公共区){
如果(geldAbgehoben您可能不应该在两个int
值中分别存储“dollar”和“cents”。只需将“amount”存储在double
或bigdecimic
中,然后在显示时格式化该值
使用双精度的示例:
double amount = 25.5;
System.out.println(amount); // Unformatted
System.out.printf("%.2f%n", amount);
System.out.println(new DecimalFormat("0.00").format(amount));
System.out.println(new DecimalFormat("#,##0.00").format(amount));
System.out.println(NumberFormat.getCurrencyInstance().format(amount));
amount = 100000;
System.out.printf("%.2f%n", amount);
System.out.println(new DecimalFormat("0.00").format(amount));
System.out.println(new DecimalFormat("#,##0.00").format(amount));
System.out.println(NumberFormat.getCurrencyInstance().format(amount));
输出:
25.5
25.50
25.50
25.50
$25.50
100000.00
100000.00
100,000.00
$100,000.00
正如它在提示中所说的那样,如果你只存储一些美分的话,那就容易多了
前
取美元数乘以100,53.27变成5327。将其存储为整数。所有的数学运算都会很好。必要时,只需除以100,5327就会再次变成53.27。感谢您花时间帮助。是的,这确实是我被告知的,我也会相应地增加。再次感谢!哦,很好!我还没有得到信息正在格式化println,但现在我知道了!练习的重点是能够在一个类中使用double和int,并能够在两者之间准确转换。defo会使用getCurrencyInstance吗?谢谢您的帮助!
25.5
25.50
25.50
25.50
$25.50
100000.00
100000.00
100,000.00
$100,000.00
public class CheckingAccount
{
private int _balance;
private String _name;
public CheckingAccount(String name, double initialBalance)
{
_name = name;
_balance = (int)(initialBalance * 100);
}
...
}