Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 足球队:对象和类别_Java_Arrays_Class_Object_Instances - Fatal编程技术网

Java 足球队:对象和类别

Java 足球队:对象和类别,java,arrays,class,object,instances,Java,Arrays,Class,Object,Instances,在我发布我的问题之前,我只需要关于如何改进java程序的指导,因为我想学习 因此,对于我的任务,我需要: 创建3个类,app,football player和football team。应用程序(app)将使用另外两个类(football player和football team) 应用程序将 创建11名足球运动员(您可以将他们放置在阵列或 ArrayList) 使用上面的球员创建一个足球队使用 football team实例(对象)以显示请求的信息 在实验室里 足球运动员班 至少具有来自

在我发布我的问题之前,我只需要关于如何改进java程序的指导,因为我想学习

因此,对于我的任务,我需要:

创建3个类,app,football player和football team。应用程序(app)将使用另外两个类(football player和football team)

应用程序将

  • 创建11名足球运动员(您可以将他们放置在阵列或 ArrayList)
  • 使用上面的球员创建一个足球队使用 football team实例(对象)以显示请求的信息 在实验室里
足球运动员班

  • 至少具有来自的5个属性 您可以选择一种返回有关玩家的完整信息的方法
一个足球队班已经开课了

  • 名字和吉祥物
  • 11名足球运动员
  • 任何其他属性(可选)
  • 显示有关团队的所有信息的方法,包括:
    • 名字
    • 吉祥物,以及球队中每个球员的信息
    • 一种使用输入参数(例如球员位置或球员编号)显示球队中特定球员信息的方法。例如,从A队,显示关于四分卫的信息,或显示关于5号球员的信息

我对我的团队课感到困惑。我不知道如何向类中添加11个播放器,并为播放器实例提供一个输入参数。我不确定我的应用程序类,因为我不知道如何使用football team实例(对象)来显示实验室中请求的信息

这是我到目前为止所拥有的

public class app {
public static void main(String[] args)
{
        player pl1 = new player
        ("Christian","Campbell","Cornerback","Alabama","Central");
            System.out.println(pl1.getInfo());

        player pl2 = new player
        ("Marcus","Allen","Safety","Maryland","Dr. Henry A. Wise, Jr");
            System.out.println(pl2.getInfo());
        player pl3 = new player 
        ("Tommy","Stevens","Quarterback","Indiana","Decatur Central");
            System.out.println(pl3.getInfo());
        player pl4 = new player
        ("Nyeem","Wartman-White", "Linebacker","Pennsylvania","Valley View");
             System.out.println(pl4.getInfo());
        player pl5 = new player
        ("George", "Foreman", "Defensive back","Georgia","Parkview");
            System.out.println(pl5.getInfo());
        player pl6 = new player
        ("Andre","Robinson","Right Tackle","Pennsylvania","Bishop McDevitt");
            System.out.println(pl6.getInfo());
        player pl7 = new player
        ("Malik","Golden","Safety","Connecticut","Chesire Academy");
            System.out.println(pl7.getInfo());
        player pl8 = new player
        ("Koa","Farmer","Safety","California","Notre Dame");
            System.out.println(pl8.getInfo());
        player pl9 = new player
        ("Jake","Zembiec","Quarterback","New York","Aquinas Institute");
            System.out.println(pl9.getInfo());
        player pl10 = new player
        ("Brandon","Polk","Wide Receiver","Virgina","Briar Woods");
            System.out.println(pl10.getInfo());
        player pl11 = new player
        ("Trace","McSorley","Quarterback","Virgina","Briar Woods");
            System.out.println(pl11.getInfo());


  }

}

public class player {



//---------Declaring attributes----
    String firstName;
    String lastName;
    String position;
    String State;
    String Highschool;


    player (String inf_firstName, String inf_lastName, String inf_position, String inf_State, String inf_Highschool)
{
            firstName = inf_firstName;
            lastName = inf_lastName;
            position = inf_position;
            State = inf_State;
            Highschool = inf_Highschool;
    }
String getInfo()
{
    return "Name: "+firstName+ " "+lastName+", "+"position: " +position+ ", State: " +State+ ", High School: " +Highschool; 
  }

}

public class team {

   String team = "Penn State";
   String mascot = "Nittany Lions";

    team(String inf_team, String inf_mascot)
      {
        team = inf_team;
        mascot = inf_mascot;                             
      }
team t1 = new team("Penn State", "Nittany Lions");

     String getInfo()
     {
       return "Team Name: "+team+ "Team Mascot: "+mascot;
     }
}

在您的团队课程中,在字符串团队和字符串吉祥物下面,您需要一个玩家[]玩家数组。在构造函数中,传入一个包含所有玩家的数组。

2选项-

在main方法中,创建一个数组并将所有玩家添加到该数组中,然后将其传递给团队构造函数,该构造函数将内部数组设置为传入数组的值

或者您的团队对象有一个名为addPlayer(player)的方法,它将玩家添加到团队的内部玩家数组中。然后在每次创建播放器后调用该方法


你也应该把你的类名大写。。像Team、Player等。

我没有为实例变量编写
getter
setter
方法,因为我认为您可以解决这些问题。但是从您对
团队的描述来看,它可能是这样的

public class Team {

    //Instance variables and constants
    private static final int MAX_PLAYERS = 11;
    private Player[] players;
    private String name;
    private String mascot;


    //Constructor
    public Team(String name, String mascot) {
        this.name = name;
        this.mascot = mascot;
        this.players = new Player[MAX_PLAYERS];
    }


    //Add players to the team
    public void addPlayers(List<Player> p) {
        //Ensures only 11 players are added to the team
        for (int i = 0; i < MAX_PLAYERS; i++)
            this.players[i] = p.get(i);
    }

}

由于您有11名玩家,因此最好创建一个对象数组,因为它们具有相似的属性。像这样:

Player[] players = new Player[11];

然后添加它们的参数,然后将其传递给app的构造函数类,该类将获取palyers的列表。

我已经更新了您的解决方案。这就是创建类和方法的方法。 有关更多信息,请参阅内联注释。希望这有帮助

            public class App {
        public static void main(String[] args) {
            //creating a team
            Team t1 = new Team("Penn State", "Nittany Lions");

            Player pl1 = new Player("Christian", "Campbell", "Cornerback", "Alabama", "Central");
            System.out.println(pl1.getInfo());
            //for example, adding one player to the team t1 created above.

            t1.addPlayer(pl1); 
            //you can repeat this step for adding all the teams

            Player pl2 = new Player("Marcus", "Allen", "Safety", "Maryland", "Dr. Henry A. Wise, Jr");
            System.out.println(pl2.getInfo());
            Player pl3 = new Player("Tommy", "Stevens", "Quarterback", "Indiana", "Decatur Central");
            System.out.println(pl3.getInfo());
            Player pl4 = new Player("Nyeem", "Wartman-White", "Linebacker", "Pennsylvania", "Valley View");
            System.out.println(pl4.getInfo());
            Player pl5 = new Player("George", "Foreman", "Defensive back", "Georgia", "Parkview");
            System.out.println(pl5.getInfo());
            Player pl6 = new Player("Andre", "Robinson", "Right Tackle", "Pennsylvania", "Bishop McDevitt");
            System.out.println(pl6.getInfo());
            Player pl7 = new Player("Malik", "Golden", "Safety", "Connecticut", "Chesire Academy");
            System.out.println(pl7.getInfo());
            Player pl8 = new Player("Koa", "Farmer", "Safety", "California", "Notre Dame");
            System.out.println(pl8.getInfo());
            Player pl9 = new Player("Jake", "Zembiec", "Quarterback", "New York", "Aquinas Institute");
            System.out.println(pl9.getInfo());
            Player pl10 = new Player("Brandon", "Polk", "Wide Receiver", "Virgina", "Briar Woods");
            System.out.println(pl10.getInfo());
            Player pl11 = new Player("Trace", "McSorley", "Quarterback", "Virgina", "Briar Woods");
            System.out.println(pl11.getInfo());

        }

    }

    class Player {

        // ---------Declaring attributes----
        String firstName;
        String lastName;
        String position;
        String State;
        String Highschool;

        Player(String inf_firstName, String inf_lastName, String inf_position, String inf_State, String inf_Highschool) {
            firstName = inf_firstName;
            lastName = inf_lastName;
            position = inf_position;
            State = inf_State;
            Highschool = inf_Highschool;
        }

        String getInfo() {
            return "Name: " + firstName + " " + lastName + ", " + "position: " + position + ", State: " + State
                    + ", High School: " + Highschool;
        }

    }

    class Team {

        String team = "Penn State";
        String mascot = "Nittany Lions";
        Player[] playerArr = new Player[11]; //this is the main part. Array of players (11)
        int playerCount = 0;  //this will track the number of players being added to the team.

        Team(String inf_team, String inf_mascot) {
            team = inf_team;
            mascot = inf_mascot;
        }

        public String getInfo() {
            return "Team Name: " + team + "Team Mascot: " + mascot;
        }

        //Using this method you can add the players to the Player Array.
        public void addPlayer(Player player) {
            if (playerCount < 11) {
                playerArr[playerCount] = player;
                playerCount++;
            }
        }

        //Using this method you find out a player with specific quality 
        //like in this case its position of the player.
        //you can iterate through the Players Array and can find out the player 
        // And after that you can get the information of the player by your method 
        //getInfo
        public String getPlayerInfo(String positionTemp) {
            Player player = null;
            for (int i = 0; i < playerArr.length; i++) {
                if (playerArr[i].position.equals(positionTemp)) {
                    player = playerArr[i];
                    break;
                }
            }
            return player.getInfo();
        }
    }
公共类应用程序{
公共静态void main(字符串[]args){
//创建团队
t1队=新队(“宾夕法尼亚州”、“尼坦狮子队”);
玩家pl1=新玩家(“克里斯蒂安”、“坎贝尔”、“角后卫”、“阿拉巴马”、“中环”);
System.out.println(pl1.getInfo());
//例如,向上面创建的团队t1添加一名玩家。
t1.addPlayer(pl1);
//可以重复此步骤添加所有团队
玩家pl2=新玩家(“马库斯”、“艾伦”、“安全”、“马里兰”、“小亨利A.怀斯博士”);
System.out.println(pl2.getInfo());
球员pl3=新球员(“汤米”、“史蒂文斯”、“四分卫”、“印第安纳”、“迪凯特中锋”);
System.out.println(pl3.getInfo());
球员pl4=新球员(“尼姆”、“沃特曼·怀特”、“后卫”、“宾夕法尼亚”、“谷景”);
System.out.println(pl4.getInfo());
球员pl5=新球员(“乔治”、“工头”、“防守后卫”、“乔治亚”、“公园景观”);
System.out.println(pl5.getInfo());
球员pl6=新球员(“安德烈”、“罗宾逊”、“右铲球”、“宾夕法尼亚”、“麦克德维特主教”);
System.out.println(pl6.getInfo());
玩家pl7=新玩家(“马利克”、“黄金”、“安全”、“康涅狄格州”、“切塞尔学院”);
System.out.println(pl7.getInfo());
玩家pl8=新玩家(“Koa”、“农民”、“安全”、“加利福尼亚”、“圣母院”);
System.out.println(pl8.getInfo());
球员pl9=新球员(“杰克”、“泽姆比奇”、“四分卫”、“纽约”、“阿奎那学院”);
System.out.println(pl9.getInfo());
玩家pl10=新玩家(“布兰登”、“波尔克”、“宽接球手”、“维吉尼亚”、“布里亚·伍兹”);
System.out.println(pl10.getInfo());
球员pl11=新球员(“Trace”、“McSorley”、“四分卫”、“Virgina”、“Briar Woods”);
System.out.println(pl11.getInfo());
}
}
职业选手{
//------声明属性----
字符串名;
字符串lastName;
串位置;
字符串状态;
弦高中;
播放器(字符串inf\u名字、字符串inf\u姓氏、字符串inf\u位置、字符串inf\u状态、字符串inf\u高中){
firstName=inf_firstName;
lastName=inf\u lastName;
位置=inf\u位置;
状态=inf_状态;
高中=inf_高中;
}
字符串getInfo(){
返回“名称:”+firstName+“+lastName+”,“+”位置:“+position+”,状态:“+State
+高中:“+高中;
}
}
班队{
String team=“宾夕法尼亚州立大学”;
字符串吉祥物=“Nittany狮子”;
Player[]playerr=新玩家[11];//这是主要部分。玩家数组(11)
int playerCount=0;//这将跟踪加入球队的球员数量。
团队(字符串inf\u团队,字符串inf\u吉祥物){
            public class App {
        public static void main(String[] args) {
            //creating a team
            Team t1 = new Team("Penn State", "Nittany Lions");

            Player pl1 = new Player("Christian", "Campbell", "Cornerback", "Alabama", "Central");
            System.out.println(pl1.getInfo());
            //for example, adding one player to the team t1 created above.

            t1.addPlayer(pl1); 
            //you can repeat this step for adding all the teams

            Player pl2 = new Player("Marcus", "Allen", "Safety", "Maryland", "Dr. Henry A. Wise, Jr");
            System.out.println(pl2.getInfo());
            Player pl3 = new Player("Tommy", "Stevens", "Quarterback", "Indiana", "Decatur Central");
            System.out.println(pl3.getInfo());
            Player pl4 = new Player("Nyeem", "Wartman-White", "Linebacker", "Pennsylvania", "Valley View");
            System.out.println(pl4.getInfo());
            Player pl5 = new Player("George", "Foreman", "Defensive back", "Georgia", "Parkview");
            System.out.println(pl5.getInfo());
            Player pl6 = new Player("Andre", "Robinson", "Right Tackle", "Pennsylvania", "Bishop McDevitt");
            System.out.println(pl6.getInfo());
            Player pl7 = new Player("Malik", "Golden", "Safety", "Connecticut", "Chesire Academy");
            System.out.println(pl7.getInfo());
            Player pl8 = new Player("Koa", "Farmer", "Safety", "California", "Notre Dame");
            System.out.println(pl8.getInfo());
            Player pl9 = new Player("Jake", "Zembiec", "Quarterback", "New York", "Aquinas Institute");
            System.out.println(pl9.getInfo());
            Player pl10 = new Player("Brandon", "Polk", "Wide Receiver", "Virgina", "Briar Woods");
            System.out.println(pl10.getInfo());
            Player pl11 = new Player("Trace", "McSorley", "Quarterback", "Virgina", "Briar Woods");
            System.out.println(pl11.getInfo());

        }

    }

    class Player {

        // ---------Declaring attributes----
        String firstName;
        String lastName;
        String position;
        String State;
        String Highschool;

        Player(String inf_firstName, String inf_lastName, String inf_position, String inf_State, String inf_Highschool) {
            firstName = inf_firstName;
            lastName = inf_lastName;
            position = inf_position;
            State = inf_State;
            Highschool = inf_Highschool;
        }

        String getInfo() {
            return "Name: " + firstName + " " + lastName + ", " + "position: " + position + ", State: " + State
                    + ", High School: " + Highschool;
        }

    }

    class Team {

        String team = "Penn State";
        String mascot = "Nittany Lions";
        Player[] playerArr = new Player[11]; //this is the main part. Array of players (11)
        int playerCount = 0;  //this will track the number of players being added to the team.

        Team(String inf_team, String inf_mascot) {
            team = inf_team;
            mascot = inf_mascot;
        }

        public String getInfo() {
            return "Team Name: " + team + "Team Mascot: " + mascot;
        }

        //Using this method you can add the players to the Player Array.
        public void addPlayer(Player player) {
            if (playerCount < 11) {
                playerArr[playerCount] = player;
                playerCount++;
            }
        }

        //Using this method you find out a player with specific quality 
        //like in this case its position of the player.
        //you can iterate through the Players Array and can find out the player 
        // And after that you can get the information of the player by your method 
        //getInfo
        public String getPlayerInfo(String positionTemp) {
            Player player = null;
            for (int i = 0; i < playerArr.length; i++) {
                if (playerArr[i].position.equals(positionTemp)) {
                    player = playerArr[i];
                    break;
                }
            }
            return player.getInfo();
        }
    }