gpt4 book ai didi

java - 需要在 Java 中解析输入的指导,需要专门使用类,很难理解构造函数

转载 作者:行者123 更新时间:2023-12-01 10:10:10 25 4
gpt4 key购买 nike

我要完成的作业如下;我不需要完整的答案,但任何形式的帮助或指导都会很好,因为我的教授回避了我的问题。太感谢了!尽我所能来掌握这些概念。这是作业:创建一个名为 PlayCards 的程序。这个类将使用另一个名为 Card 的类。将两个类放在同一个文件中,但将程序创建为“PlayCards”。

创建一个代表扑克牌的类(称为 Card)和使用该类的另一个类(称为 PlayCards)。

卡片有两个字段:等级和花色。等级和花色均使用整数。对于排名,使用值 2 到 10 代表排名 2 到 10,11 代表 Jack,12 代表 Queen,13 代表 King,14 代表 Ace。对于花色,梅花使用 0,方片使用 1,红心使用 2,黑桃使用 3。

只有 PlayCards 类才会有 main() 方法。此方法应读取“7-S K-H 2-H 4-C J-D”形式的参数。每个arg代表一张卡。第一部分是等级,第二部分是花色。 C 代表梅花,D 代表方 block ,H 代表红心,S 代表黑桃。

对于每个参数,您的程序必须解析该参数,创建一个代表该卡片的 Card 对象。示例:

4♥王♣2 ♠女王 ❖10 ♣

要打印花色符号,请使用“♥”、“♣”、“♠”和“&diamonds;”

到目前为止,这是我的代码:

class PlayCards
{
public static void main(String[] args)
{
Card c1 = new Card(17, 3);
}
}
class Card
{
private int Rank;
private int Suit;

public Card() {
//Declaring of Object
}

public Card(int Rank, int Suit) {
if (14 < Rank || Rank < 2) {
System.out.println("Error: This Card does not exist.")
}
System.out.println("Hi from the Card Constructor. The Key to successful completion of this assignment.");
this.Rank = Rank;
this.Suit = Suit;
}
}

** 我知道它很小,但这只是因为我废弃了其他文件以重新开始。我有一种方法可以用 If 语句检测字符的出现情况,但我遇到了困难,因为它需要使用对象和附加类来完成。一如既往地感谢任何花时间提供帮助的人,这总是令人感激不已! - 协同作用

最佳答案

对于任何java程序,main方法是第一个执行的线程。您可以将其视为代码的入口点。现在,在您的情况下, main 方法存在于 PlayCards 类中,因此它首先被执行。现在这个方法可以通过指定的参数与外部世界交互。这些参数通过名为 args 的字符串数组传递给代码。您可以看到它作为 main 方法的参数出现。

现在您可以单独访问每个参数,如 args[0]、args[1] 等。由于每个元素都是一个字符串,因此您可以在它们之上执行内置的字符串操作。 split() 就是这样的方法之一。字符串分词器就是这样一个类,它具有相同的功能。您可以在 java 文档上阅读有关它们的更多信息。

将“7-H”等参数拆分为“7”和“H”后,您可以使用类似 parseInt() 方法直接将整数解析为字符串。同样,您应该在线阅读文档。现在您已将“7”转换为 7,您可以使用替换或其他方式将“H”替换为其等效数字。

从这里开始,这对您来说应该很容易。

关于java - 需要在 Java 中解析输入的指导,需要专门使用类,很难理解构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com