【发布时间】:2018-08-28 13:02:07
【问题描述】:
所以我在 Java 中创建了一个“朋友”类,每个朋友都有一个:姓名、生日、昵称、类型。我不知道如何为班上的每个朋友打印出所有这些数据,这就是我的目标。我希望能够拥有这样的东西:
for(//each person in my friends class, print out the data)
让它看起来像这样:
System.out.println("Name: " + Friend.name);
System.out.println("Bday: " + Friend.birthday);
System.out.println("Nickname: " + Friend.nickname);
System.out.println("Type: " + Friend.type);
输出会是这样的:
Name: Spencer
Bday: 101002
Nickname: Colin
Type: Tier 1
这是我目前所拥有的:
import java.util.Random;
class friends {
String name;
int birthday;
String nickname;
String type;
}
public class RipStefan {
public static void main(String[] args) {
friends Colin = new friends();
Colin.name = "Spencer";
Colin.birthday = 101002;
Colin.nickname = "Colin";
Colin.type = "Tier 1";
friends Sanger = new friends();
Sanger.name = "Oliver";
Sanger.birthday = 112702;
Sanger.nickname = "Sanger";
Sanger.type = "Tier 1";
friends Paul = new friends();
Paul.name = "Paul";
Paul.birthday = 022103;
Paul.nickname = "PBJ";
Paul.type = "Tier 1";
}
}
抱歉,如果任何格式关闭,这是我在 Stack Overflow 上的第一个问题。
【问题讨论】:
-
简单的答案:不要单独获取值,而是让你的类实现/覆盖 toString() 方法。
-
按照惯例,Java 类应该以大写字母开头,而且我认为你应该去掉“s”,因为该类代表一个朋友。
friends -> Friend -
@GhostCat 重复错误。
-
@MuratK。我又加了一个。
-
看看 Apache Commons 的 ReflectionToStringBuilder,它对构建动态 toString 表示有很大帮助:commons.apache.org/proper/commons-lang/apidocs/org/apache/…