有关制作Java程序的建议,该程序将使用户能够从给定列表中选择一本书,输入数量并确认订单

时间:2019-03-06 13:26:42

标签: java java.util.scanner joptionpane

我并不是在问完整的代码,而是在学习如何编写程序时需要学习什么。我需要真正学习该程序的工作原理。

我是大一学生,到目前为止,我们只教过Java打印,输入,显示,扫描仪和JOptionPane。我们的任务是使用仅学到的知识编写程序。

我想说的是,一名学生需要订购所需的教科书。单击该程序,用户将在程序顶部看到可用书籍的清单,以及其书名,代码,价格和可用数量(可选)

下面是多个输入,第一个输入询问他们选择的书的代码。接下来是他们想要的数量。底部的“再次订购”,“确认订购”和“取消”确认按钮。 “再次订购”将使用户选择另一个标题和数量。 “确认订单”将是收据和确认页面的类型。

此程序可以在Scanner或JOptionPane中制作吗?不再复杂将使教授变得可疑。他很清楚只使用 他所教的内容。

如果是,将采取哪些步骤?即使到那时,鉴于我有限的知识,我仍然对程序的外观有一个模糊的想法。

2 个答案:

答案 0 :(得分:0)

我们当然不能为您编写该程序,但是寻求建议是可以的。 考虑一下您需要完成的工作。   1.显示书籍清单   2.用户从列表中选择一些项目和数量   3.确认订单

所以为了做#1 ...   您将需要一本书籍清单(数组)   您可能需要在JOptionPane中显示它   您可能会通过在数组上使用FOR LOOP(或FOR EACH LOOP)来做到这一点,   并打印出来。

所以为了做#2 ...   您将需要让程序接受用户输入,可能需要通过扫描仪   您可能需要打印声明,要求他们提供输入信息,以及是否   他们想继续。就像是:   您将需要一个大小相同的数组(即,相同数量的元素)   作为书籍数组。

  (java/python pseudocode format, not intended to function):
    print("Please select a book")
    print(bookarray)
    Scanner captures user input
    print("How many?")
    Scanner captures user input
    print("Would you like anything else? y/n")
    if Scanner.input = "y", repeat the process
    else: print ("thank you for your order")

所以为了做#3 ...   您将需要知道每本书购买了多少本。   假设您有一个bookArray like = {"Book1", "Book2", "Book3"}   您可能有一个SalesArray like = {0,0,0}   然后,当有人订购一本书时,您可以从书本中抓取INDEX   并相应地更新SalesArray

遍历书籍数组并打印出书籍名称和相关的销售   从销售阵列中

对于这些类型的项目,您可以考虑自己要做的事情。一旦开始编写代码,   如果您遇到困难,请发布尚未回答的问题以寻求帮助。祝你好运。

答案 1 :(得分:0)

是的,有可能。

对您来说,最简单的解决方案可能是放开按钮和所有其他奇特的东西,然后尝试使程序首先工作。

也许可以创建类似于文本冒险的输入(食人之径和诸如此类)。通过从控制台打印和读取。 首先输出书籍,标题,代码等的格式化列表。然后询问用户他想要什么书籍,并从控制台读取其输入(书籍,数量等)。也许显示一个确认并询问他是否要继续。

一旦核心开始工作,您就可以算出所有更高级的东西。