我正在尝试创建一个程序,允许用户说,输入(橙色/苹果/香蕉等),然后输入他们想要购买的数量,程序将计算总数。然而,在尝试了字符串(不能将它们相乘)和其他一些选项之后,我陷入了困境。我和无数的向导一起浏览了这个论坛,但没有结果。我插入的IF语句只是为了让它正常工作而做的最后一次尝试,当然,它崩溃了。我相信这都是些基本的东西,但我对这方面还很陌生。我还想显示一个列表供选择,可能类似于橘子:Qnty:(框在这里)苹果:Qnty:(框在这里)香蕉:Qnty:(框在这里)等等,但我真的很乐意得到帮助,因为如何允许用户输入一个词,橙色,它被分配了我预设的值,这样我就可以将它乘以数量。感谢所有的帮助,也感谢批评,当然,你知道,在合理的程度上。。。这是我的密码。
/* Name 1, x0000
* Name 2, x0001
* Name 3, x0003
*/
import java.util.Scanner;
public class SD_CA_W3_TEST1
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
double nameOfItem1, nameOfItem2, nameofItem3;
double quantityItem1, quantityItem2, quantityItem3;
final double apple = 0.30;
final double orange = 0.45;
final double strawberry = 2.30;
final double potato = 3.25;
final double turnip = 0.70;
final double carrot = 1.25;
double totalCost;
String strNameOfItem1;
System.out.println(" \t \t What would you like to buy today?");
System.out.print("Please choose from our fine selection of: oranges, strawberries, potatoes, turnips, and carrots. \n" );
System.out.print("Enter name of product ");
nameOfItem1 = in.nextDouble();
nameOfItem1 = If = nameOfItem1 (apple, orange, strawberry, potato, turnip, carrot);
System.out.print("Please enter a quantity to purchase");
quantityItem1 = in.nextDouble();
totalCost = quantityItem1 * strNameOfItem1;
System.out.print("The total cost of your purchase is: " +totalCost );
}
}
枚举
似乎是一个不错的选择。它可以帮助您轻松地将商品名称映射到价格,而不是创建几个双
变量。
private enum Items {
APPLE(0.30), ORANGE(0.45), STRAWBERRY(2.30),
POTATO(3.25), TURNIP(0.70), CARROT(1.25);
double price;
Items(double price) {
this.price = price;
}
double getPrice() {
return price;
}
}
使用扫描器#next()读取字符串,然后使用枚举。valueOf()验证用户输入并将其转换为您的一个项目。
Scanner in = new Scanner(System.in);
System.out.println("What would you like to buy today?");
System.out.println("Please choose from our fine selection of: " +
"Orange, Strawberry, Potato, Turnip, and Carrot.");
System.out.print("Enter name of product: ");
String nameOfItem = in.next();
Items item;
try {
// Validate Item
item = Items.valueOf(nameOfItem.toUpperCase());
} catch (Exception e) {
System.err.println("No such item exists in catalog. Exiting..");
return;
}
System.out.print("Please enter a quantity to purchase: ");
int quantity;
try {
quantity = in.nextInt();
if (!(quantity > 0)) { // Validate quantity
throw new Exception();
}
} catch (Exception e) {
System.err.println("Invalid quantity specified. Exiting..");
return;
}
double totalCost = quantity * item.getPrice();
System.out.printf("The total cost of your purchase is: %.2f", totalCost);
输出:
What would you like to buy today?
Please choose from our fine selection of: Orange, Strawberry, Potato, Turnip, and Carrot.
Enter name of product: Strawberry
Please enter a quantity to purchase:3
The total cost of your purchase is: 6.90
尝试使用枚举,
class Test{
public enum Fruits{
apple(0.30), orange(0.45), strawberry(2.30), potato(3.25);
private final double value;
Fruits(double value1){
value = value1;
}
public double getValue(){
return value;
}
}
public static void main(String[] args) {
int quantity = 0;
// Read your value here and assign it to quantity
System.out.println(Fruits.apple.getValue()*quantity);
}
}
我会使用HashMap。这是一个很好的教程:http://www.tutorialspoint.com/java/util/hashmap_get.htm
HashMap food = new HashMap();
food.put("Apple", 0.30);
food.put("Orange", 0.45);
...
然后使用
food.get("Apple");
给你价格。
总计如下:
double quantity = 4.0;
double total = food.get("apple") * quantity;
我试图使用psycopg2从postgres数据库的特定表中获取一组对象。我看到的关于将变量传递给游标的所有建议。execute(SQL)命令似乎无法处理两种类型的变量 这是我第一次累了但没用的东西: 这总是在插入表名称时返回语法错误
问题内容: 我在python中有此代码。 我将从这样的命令行运行此脚本 因此,我需要一种使len使用列表而不是变量的方法,我只想在var中给出列表的名称。 我知道在这个例子中我可以做 但是我的脚本上有13个列表,我需要一种方法,可以通过在命令行上输入的名称来引用它们。 问题答案: 尽管这在Python中是完全可能的,但不是必需的。最好的解决方案是不执行此操作,而是使用字典。 您会注意到脚本中有13
问题内容: 我在PHP中有一个POST,但我并不总是知道将要处理的变量字段的名称。 我有一个可以遍历值的函数(但是我也想捕获它附带的变量名。) 一旦弄清楚如何获取变量名,我还需要弄清楚如何使函数足够智能以检测和遍历变量的数组(如果存在)(即如果我有一些复选框值)。 问题答案: 如果您只想打印整个$ _POST数组以验证是否正确发送了数据,请使用print_r: 要递归打印数组的内容: 将一些填充应
可以通过Request对象完成全局输入变量的检测、获取和安全过滤,支持包括$_GET、$_POST、$_REQUEST、$_SERVER、$_SESSION、$_COOKIE、$_ENV等系统变量,以及文件上传信息。 获取PARAM变量 PARAM变量是 TP5推荐的获取请求参数的方式 // 获取当前请求的id变量 $request->param('id'); // 获取当前请求的所有变量(已过
请参考:http://www.kancloud.cn/manual/thinkphp/1721
可以通过Request对象完成全局输入变量的检测、获取和安全过滤,支持包括$_GET、$_POST、$_REQUEST、$_SERVER、$_SESSION、$_COOKIE、$_ENV等系统变量,以及文件上传信息。 获取PARAM变量 PARAM变量是 TP6.0推荐的获取请求参数的方式 // 获取当前请求的id变量 $request->param('id'); // 获取当前请求的所有变量(