[英]How to use toString method to print two objects within a third object?
[英]How to make toString method within object?
import java.util.ArrayList;
public class Card {
int number;
String suit;
public Card(int number, String suit) {
this.number = number;
this.suit = suit;
@Override
public String toString() {
String[] high = {
"Jack",
"Queen",
"King"
};
String type;
if (number < 10) {
return String.valueOf(this.number) + " of " + this.suit;
}
else {
return high[this.number-10] + " of " + this.suit;
}
//return suit + " of " + type;
//return String.valueOf(number) + " of " + suit;
}
}
public static void main(String[] args) {
String[] suit = {
"Clubs",
"Diamonds",
"Spades",
"Hearts"
};
// String[] high = {
// "Jack",
// "Queen",
// "King"
// };
ArrayList<Card> deckOfCards = new ArrayList<Card>(52);
for (int j = 0; j < 4; j++) {
for (int i = 0; i < 13; i++) {
deckOfCards.add(new Card (i+1, suit[j]));
currentCard.toString();
}
}
// @Override
// public String toString(Card card) {
//
// this.suit = suit;
// this.number = number;
//
// String type;
//
// if (number < 10) {
// type = Integer.toString(number);
// }
// else {
// type = high[i-number];
// }
//
// return suit + " of " + type;
// }
// currentCard.toString();
}
}
除了Card类中的toString方法之外,其他所有方法都起作用。 不能100%确定问题是什么,错误消息是
Card.java:13:错误:“;” 预期的公共字符串toString(){
任何帮助表示赞赏,谢谢
您的toString()
方法位于Card(int number, String suite)
构造函数中。 移开。
String method
位于Cards类的构造函数内部,将其移到外部,以便可以使用它,这样您就可以拥有有效的Card constr
。
将toString放在构造函数之外。
public Card(int number, String suit) {
this.number = number;
this.suit = suit;
}
@Override
public String toString() {
String[] high = {
"Jack",
"Queen",
"King"
};
String type;
if (number < 10) {
return String.valueOf(this.number) + " of " + this.suit;
}
else {
return high[this.number-10] + " of " + this.suit;
}
}
您的toString()方法位于构造函数内部;
这是更正的代码
public class Card {
int number;
String suit;
public Card(int number, String suit) {
this.number = number;
this.suit = suit;
}
@Override
public String toString() {
String[] high = {
"Jack",
"Queen",
"King"
};
String type;
if (number < 10) {
return String.valueOf(this.number) + " of " + this.suit;
}
else {
return high[this.number-10] + " of " + this.suit;
}
//return suit + " of " + type;
//return String.valueOf(number) + " of " + suit;
}
// your main starts from here..
不要忘了格式化,如果您在Eclipse Ctrl + Shift + F中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.