Java-如何将用户输入保存到2D数组中
我正在使用类创建一个战舰游戏。游戏首先询问2名玩家的名字,然后要求玩家提供2分来设置船。玩家来回拾取点数,直到a船沉没并显示赢家 我一直在努力用相应的玩家名称将这些点保存到2D数组中。我想对两名球员都使用一分,只是为了缩短时间。如有任何建议,我将不胜感激 runBattleship主类:输入和输出Java-如何将用户输入保存到2D数组中,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,我正在使用类创建一个战舰游戏。游戏首先询问2名玩家的名字,然后要求玩家提供2分来设置船。玩家来回拾取点数,直到a船沉没并显示赢家 我一直在努力用相应的玩家名称将这些点保存到2D数组中。我想对两名球员都使用一分,只是为了缩短时间。如有任何建议,我将不胜感激 runBattleship主类:输入和输出 Scanner keyboard = new Scanner(System.in); Players p1 = new Players(); Players p2 = new Players();
Scanner keyboard = new Scanner(System.in);
Players p1 = new Players();
Players p2 = new Players();
Grid px = new Grid();
Grid py = new Grid();
System.out.print("Welcome to Battleship game");
System.out.println("");
System.out.print("Player 1 enter name: ");
p1.setName(keyboard.next());
System.out.print("Player 2 enter name: ");
p2.setName(keyboard.next());
System.out.println("");
System.out.println("Player 1 select point x and y (5x5 grid)");
px.setPointX(keyboard.nextInt());
py.setPointY(keyboard.nextInt());
玩家类:玩家名称的获取者和设置者,并从网格中调用对象以获取分数
String name;
int pointX, pointY;
Players(){
name = "";
}
public Players(String name, Grid pointX, Grid pointY){
this.name = name;
this.pointX = pointX.getPointX();
this.pointY = pointY.getPointY();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
网格类:用于点用户输入的getter和setter
Ship[][] board = new Ship[5][5];
int pointX, pointY;
public int getPointX() {
return pointX;
}
public void setPointX(int pointX) {
this.pointX = pointX;
}
public int getPointY() {
return pointY;
}
public void setPointY(int pointY) {
this.pointY = pointY;
}
船舶等级:如果是合适的地方,我计划在那里拯救这些船舶
String name;
int px, py;
public void placeShipAt(Grid pointX, Grid pointY, Players name){
this.name = name.getName();
this.px = pointX.getPointX();
this.py = pointY.getPointY();
}
您可以花很少的时间学习
映射
,这样您就不会在数组中进行复杂的排列,但您仍然可以这样做:)。@Plain\u Dude\u Sleeping\u独自映射?这是一个更容易使用的方法吗?我从来没有听说过它像Map
…,@Plain\u Dude\u Sleeping\u这样会在主类中使用迭代器,对吗?