【发布时间】:2014-02-25 23:10:55
【问题描述】:
编写一个封装硬币概念的类,假设硬币具有以下属性:硬币数量、硬币数量、镍币数量和便士数量。包括构造函数、评估器和修改器,以及 toString 和 equals 方法。
不知道如何做这部分:
-
还对以下方法进行编码:一种以美元表示法返回总金额,小数点后两位有效数字,另一种以四分之一、一角、镍和便士的形式返回货币。编写一个接受用户输入的客户端类来测试类中的所有方法。
public class CoinsApp { public static void main(String[] args) { Coins c = new Coins(); Scanner scan = new Scanner(System.in); System.out.print("Enter the number of Quarters: "); int q = scan.nextInt(); System.out.print("Enter the number of Dimes: "); int d = scan.nextInt(); System.out.print("Enter the number of nickels: "); int n = scan.nextInt(); System.out.print("Enter the number of pennies: "); int p = scan.nextInt(); Coins c1 = new Coins(q,d,n,p); System.out.println(c1); } }
我必须对我目前的班级做出哪些改变?
公共类硬币{
private int quarters;
private int dimes;
private int nickles;
private int pennies;
public Coins() {
quarters = 0;
dimes = 0;
nickles = 0;
pennies = 0;
}
public Coins(int quarters, int dimes, int nickles, int pennies) {
this.quarters = quarters;
this.dimes = dimes;
this.nickles = nickles;
this.pennies = pennies;
}
/**
*
* @return the value of nickles
*/
public int getNickles() {
return nickles;
}
/**
*
* @param nickles
*/
public void setNickles(int nickles) {
this.nickles = nickles;
}
public int getPennies() {
return pennies;
}
public void setPennies(int pennies) {
this.pennies = pennies;
}
/**
* Get the value of dimes
*
* @return the value of dimes
*/
public int getDimes() {
return dimes;
}
/**
* Set the value of dimes
*
* @param dimes new value of dimes
*/
public void setDimes(int dimes) {
this.dimes = dimes;
}
/**
* Get the value of quarters
*
* @return the value of quarters
*/
public int getQuarters() {
return quarters;
}
/**
* Set the value of quarters
*
* @param quarters new value of quarters
*/
public void setQuarters(int quarters) {
this.quarters = quarters;
}
@Override
public String toString() {
return "Coins{" + "quarters=" + quarters + ", dimes=" + dimes + ", nickles=" + nickles + ", pennies=" + pennies + '}';
}
@Override
public boolean equals(Object obj) {
if (obj == null) {
return false;
}
if (getClass() != obj.getClass()) {
return false;
}
final Coins other = (Coins) obj;
if (this.quarters != other.quarters) {
return false;
}
if (this.dimes != other.dimes) {
return false;
}
if (this.nickles != other.nickles) {
return false;
}
if (this.pennies != other.pennies) {
return false;
}
return true;
}
}
【问题讨论】:
-
您遇到的错误是什么?或者,如果您对某个特定概念感到模糊,也许将其提出将有助于我们引导您朝着正确的方向前进 :)