- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
对于此代码,我创建了一个数组列表,其中提示用户将字符串类型的硬币输入到“钱包”中,然后将其添加到数组列表中。我有一个返回数组列表的方法,打印出列表中的硬币。我创建了其他几个方法,它们以多种方式作用于数组列表。我遇到的主要问题是创建一个名为 Coin 的类,在其中我想为数组列表“coins”中输入的每个硬币分配一个值。这将允许我创建一个方法来将“硬币”数组中每个硬币的值相加,或者创建一个从“硬币”数组中花费硬币的方法。我考虑过在 Coins 类中添加一个 public void setType(String Enter) 方法来为每个输入的硬币分配一个值,但我不完全确定如何去做。然而,一旦完成,我知道我想要创建一个列表:List coinPocket = new ArrayList<>();以及一个将 Coin 类中的值添加到数组列表的私有(private)方法:ArrayList coin = new ArrayList();。我想知道是否有人知道我会怎么做。这是到目前为止我的所有代码:
public class Coin
{
private String type;
private String currencyType;
private double penny = 0.01;
private double quarter = 0.25;
private double dime = 0.10;
private double nickle = 0.05;
public void setType(String entered)
{
}
}
<小时/>
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Collections;
import java.util.List;
/**
*
* A class that contains methods and variables for adding and rearranging coins in a purse. An array list of coins; two variables, TERMINATE to stop adding coins and coinEntered to represent a coin in the purse; and a Scanner for user input are used.
*/
public class Purse
{
ArrayList<String> coins = new ArrayList<String>();
List<Coin> coinPocket = new ArrayList<>();
Scanner in = new Scanner(System.in);
private final String TERMINATE = "Q";
private String coinEntered = " ";
private void addCoins(String coinType)
{
Coin cash = new Coin();
cash.setType(coinType);
coinPocket.add(cash);
}
/**
* A method that allows the user to add coins to their purse and second purse, assuming it is American currency. If it is not American currency, the user is asked to enter the correct currency. The user will be prompted to press Q to quit adding coins once they have added them all.
* @param coinName
*
*/
public void addCoin(String coinName)
{
System.out.println("Which coin would you like to add? PENNY, NICKLE, DIME, or QUARTER? Press Q to stop adding coins.");
while (!coinEntered.equals(TERMINATE))
{
coinEntered = in.nextLine();
if (coinEntered.equals("PENNY") || coinEntered.equals("NICKLE") || coinEntered.equals("DIME") || coinEntered.equals("QUARTER") || coinEntered.equals(TERMINATE))
{
coins.add(coinEntered);
coins.remove(TERMINATE);
}
else
{
System.out.println("Sorry! You can only add American currency to the purse. Please add American currency.");
}
}
}
/**
* Prints out the purse and its contents after adding coins.
* @return
* Purse with added coins.
*/
public ArrayList<String> printPurseContents()
{
return coins;
}
/**
* Reverses the order of the coins in a purse, then prints out the contents of the purse in reverse order.
* @return
* Reverse order of array of coins.
*/
public ArrayList<String> reverse()
{
Collections.reverse(coins);
return coins;
}
/**
* A method that allows the user to transfer coins in a purse to a different purse. The coins transfered from the original purse will leave that purse empty.
* @param otherPurse
*
*/
public void transfer(Purse otherPurse)
{
coins.addAll(otherPurse.coins);
otherPurse.coins.clear();
}
/**
* Method that checks whether one purse has the same coins in the same order as another purse.
* @param otherPurse
* @return Prints true if the contents of each purse have the same coins and the same order of coins, or false if the contents of each purse do not have the same coins and the same order of coins.
*/
public boolean sameContents(Purse otherPurse)
{
if(otherPurse.coins.equals(coins))
{
System.out.println("It is true that each purse has the same coins in the same order.");
return true;
}
else
{
System.out.println("It is false that each purse has the same coins in the same order.");
return false;
}
}
/**
* Method that checks whether one purse has the same coins as another purse regardless of the order of coins.
* @param otherPurse
* @return Prints true if each purse has the same coins as another purse regardless of order, or prints false if each purse does not have the same coins as another purse regardless of order.
*/
public boolean sameCoins(Purse otherPurse)
{
if(otherPurse.coins.containsAll(coins))
{
System.out.println("It is true that each purse has the same coins regardless of order.");
return true;
}
else
{
System.out.println("It is false that each purse has the same coins regardless of order.");
return false;
}
}
public void addTotalCoins()
{
}
public void spendCoin()
{
}
}
<小时/>
public class PurseMain
{
public static void main(String[] args)
{
Purse johnnysPurse = new Purse();
Purse otherPurse = new Purse();
johnnysPurse.addCoin(null);
otherPurse.addCoin(null);
System.out.println("Purse " + johnnysPurse.printPurseContents());
System.out.println("Purse " + otherPurse.printPurseContents());
System.out.println();
System.out.println(otherPurse.sameContents(johnnysPurse));
System.out.println();
System.out.println(otherPurse.sameCoins(johnnysPurse));
System.out.println();
}
}
最佳答案
如果我正确理解你的问题,你想要求用户输入“PENNY”、“DIME”等字符串,并从中创建一个硬币
。
为此,您可以使用带有属性的枚举,例如:
enum CoinType {
PENNY(0.01),
NICKLE(0.05)
DIME(0.1),
QUARTER(0.25);
private final double value;
private CoinType( double v ) {
value = v;
}
public double getValue() {
return value;
}
}
然后询问用户一个号码(提供选择列表)或姓名。假设您询问姓名,则可以执行以下操作:
CoinType type = CoinType.valueOf( coinEntered );
捕获IllegalArgumentException
以防用户输入错误的名称。
关于java - 如何在 Java 中将 Double 值分配给字符串数组列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32400257/
这个问题在这里已经有了答案: How to initialize var? (11 个答案) 关闭 8 年前。 我想给一个变量赋初值 null,并在下一个 if-else block 中赋值,但是编
我正在使用 TypeScript 3.8 编写 JS 和 TS 混合的代码。我写了以下行: export * as Easing from './easing'; 应该是 fair game在 Typ
我需要将 R 代码中的“/”更改为“\”。我有这样的事情: tmp <- paste(getwd(),"tmp.xls",sep="/") 所以我的 tmp是 c:/Study/tmp.xls 我希望
我有个问题。例如我有这个: id truth count 1 1 1 2 1 2 3 0 0 4 1 1 5 1 2 6 1
我正在尝试使用“IN”和“=”来查找一些 bean。我目前正在使用此代码: $ids = array(1,2,3,4); $user = 1; $things = R::find( 'thing'
是否可以在 Xcode 中部署到其他人的手机上?我没有 iPhone,但我想测试我在 friend 手机上制作的应用程序。在我支付 99 美元之前,我想确保这不会造成麻烦。 谢谢。 最佳答案 不会有任
我试图得到一个非常大的数字(超过 unsigned long long int )。所以我把它作为一个字符串,然后一个数字一个数字地转换成整数并使用它。 #include #include int
我在 Rust 中有 C 语言库的绑定(bind),但它们并不完整。 在 C 代码中,我定义了一个简化的宏,如下所示: #define MY_MACROS1(PTR) (((my_struct1
我正在努力解决这个问题。 http://jsfiddle.net/yhcqfy44/ 动画应该自动相对于 滚动到顶部每次出现滚动条时的高度。 我已经写了这个,但没有运气: var hheight =
我正在处理一个将数字作为字符串返回的 JSON API。例如 "12" ,但是,该字段值也可以是非数字的,例如:"-" . 我已将 JSON 数据解析为映射,我想将此字段提取为 elixir 中的整数
我正在尝试编写一个类,将.wav文件转换为.aiff文件作为项目的一部分。 我遇到了几个库Alvas.Audio(http://alvas.net/alvas.audio,overview.aspx)
我想在 Lucene 中将像“New York”这样的“复合词”索引为单个术语,而不是像“new”、“york”那样。这样,如果有人搜索“new place”,则包含“new york”的文档将不会匹
我希望这个解释能让我更好地了解使用宏的优点。 最佳答案 在函数中,所有参数在调用之前都会被评估。 这意味着 or 作为函数不能是惰性的,而宏可以将 or 重写为 if 语句,该语句仅在以下情况下计算分
我有一些看起来像这样的 XML foo ]]> (注意 > 登录 "> foo")和 XSLT 样式表 当我运行xsltproc stylesheet.xs
当我尝试将 Any 转换为 List 时,如下面的示例所示,我得到“Unchecked cast: Any!”到列表'警告。有没有解决此类问题的方法? val x: List = objectOfTy
我正在使用 Python 开发一个简单的爬虫。目的是创建一个 sitemap.xml。(你可以在这里找到真正的 alpha 版本:http://code.google.com/p/sitemappy/
我想知道在 VBScript 中是否可以在多行中中断 If 语句。喜欢: If (UCase(Trim(objSheet.Cells(i, a).Value)) = "YES") Or _ (UCas
for (String item : someList) { System.out.println(item); } 使用“do while”是否等效? 谢谢。 最佳答案 如果列表为空,f
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: Split string with delimiters in C 在 C 中将“,”分隔的列表拆分为数组的最佳方法
我有一个如下所示的字符数组: [0, 10, 20, 30, 670] 如何将此字符串转换为整数数组? 这是我的数组 int i=0; size_t dim = 1; char* array = (c
我是一名优秀的程序员,十分优秀!