public class Game {
private Player player;
private Dot dot1;
private Dot dot2;
private Dot dot3;
private Exit exit;
public Game(int x, int y) {
player = new Player(x, y);
dot1 = new Dot(1, 1);
dot2 = new Dot(2, 2);
dot3 = new Dot(3, 3);
exit = new Exit(4,4);
}
public void move(int dx, int dy) {
player.move(dx, dy);
player.collect(dot1);
player.collect(dot2);
player.collect(dot3);
player.exit(exit);
}
public String toString() {
return player.toString() + " " + dot1.toString() + " " + dot2.toString() + " " + dot3.toString()+" "+exit.toString();
}
public void input()
{
System.out.print("Move (l/r/u/d): ");
Scanner in = new Scanner(System.in);
char choose = in.next().charAt(0);
if(choose=='l'||choose=='r'||choose=='u'||choose=='d')
{
switch(choose)
{
case 'l':move(-1,0);break;
case 'r':move(1,0);break;
case 'u':move(0,-1);break;
case 'd':move(0,1);break;
}
}
else
{
System.out.println("Invalid move");
}
}
public void start()
{
while(exit.toString().equals("Exit(-,-)"))
{
System.out.println(player.toString() + " " + dot1.toString() + " " + dot2.toString() + " " + dot3.toString()+" "+exit.toString());
input();
}
System.out.println("You win!");
}
}
问题在start()方法里面
老师要求在这个方法里输出本类的参数
我写的start 方法是错的。。
试了好多 也不知道怎么写。。
不是不能在本类中输出,不是需要在其他类中new 一个才行么
为什么老师会让我们这么做呢。。
有什么方法可以实现么?
$ game = new Game(0,0)
$ game.start()
Player[](0,0) Dot(1,1) Dot(2,2) Dot(3,3) Exit(4,4)
Move (l/r/u/d): r
这是系统里面给的对比答案。。
求大神指教
java 在本类中 输出本类的参数
答案:2 悬赏:40 手机版
解决时间 2021-02-25 21:41
- 提问者网友:活着好累
- 2021-02-24 22:30
最佳答案
- 五星知识达人网友:荒野風
- 2021-02-24 23:02
最简单的方法就是用字符串 加 变量 拼凑一个出来就行了,除了那些变量,其他的都是固定的
全部回答
- 1楼网友:野慌
- 2021-02-25 00:00
java.io常用四个基本类如下:
inputstream:继承自inputstream的流都是用于向程序中输入数据的,且数据单位都是字节(8位)。
outputsteam:继承自outputstream的流都是程序用于向外输出数据的,且数据单位都是字节(8位)。
reader:继承自reader的流都是用于向程序中输入数据的,且数据单位都是字符(16位)。
writer:继承自writer的流都是程序用于向外输出数据的,且数据单位都是字符(16位)。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯