I'm curious about the question on page 365 just under the "Do this" label, how can you store numbers for retired people from multiple teams? I can't really figure this one out.
Thanks
Posted 01 November 2012 - 10:15 AM
Posted 01 November 2012 - 05:14 PM
public enum TeamName
{
Team1,
Team2,
Team3,
etc,
}
Dictionary<TeamName, Dictionary<int, JerseyNumber>> allRetiredNumbers = new Dictionary<TeamName, Dictionary<int, JerseyNumber>>();
Dictionary<int, JerseyNumber> teamRetiredNumbers = new Dictionary<int, JerseyNumber>();
teamRetiredNumbers.Add(3, new JerseyNumber("Babe Ruth", 1948));
teamRetiredNumbers.Add(4, new JerseyNumber("Lou Gehrig", 1939));
teamRetiredNumbers.Add(5, new JerseyNumber("Joe DiMaggio", 1952));
allRetiredNumbers.Add(TeamName.Team1, teamRetiredNumbers);
teamRetiredNumbers = new Dictionary<int, JerseyNumber>();
teamRetiredNumbers.Add(3, new JerseyNumber("Some Player", 1948));
teamRetiredNumbers.Add(4, new JerseyNumber("Another Player", 1939));
teamRetiredNumbers.Add(5, new JerseyNumber("One More", 1952));
allRetiredNumbers.Add(TeamName.Team2, teamRetiredNumbers);
JerseyNumber jerseyNumber = allRetiredNumbers[(TeamName)teamName.SelectedItem][(int)number.SelectedItem];
Dictionary<int, List<JerseyNumber>> allRetiredNumbers = new Dictionary<int, List<JerseyNumber>>(); List<JerseyNumber> retiredNumbers = new List<JerseyNumber>(); retiredNumbers.Add(new JerseyNumber(TeamName.Team1, "Babe Ruth", 1948)); retiredNumbers.Add(new JerseyNumber(TeamName.Team2, "Some Player", 1939)); retiredNumbers.Add(new JerseyNumber(TeamName.Team3, "Another Player", 1952)); allRetiredNumbers.Add(3, retiredNumbers); retiredNumbers = new List<JerseyNumber>(); retiredNumbers.Add(new JerseyNumber(TeamName.Team1, "One More", 1948)); retiredNumbers.Add(new JerseyNumber(TeamName.Team2, "Second One", 1939)); retiredNumbers.Add(new JerseyNumber(TeamName.Team3, "Third Player", 1952)); allRetiredNumbers.Add(4, retiredNumbers);
This post has been edited by Sikta_26785: 01 November 2012 - 05:15 PM
Posted 05 November 2012 - 09:27 AM
Posted 06 November 2012 - 01:09 PM
Posted 16 January 2013 - 04:58 AM
public partial class Form1 : Form
{
Dictionary<TeamName, Dictionary<int, JerseyNumber>> allRetiredNumbers = new Dictionary<TeamName, Dictionary<int, JerseyNumber>>()
{
{
TeamName.Team1,
new Dictionary<int,JerseyNumber >()
{
{3, new JerseyNumber("Jd1 Player", 1948)},
{4, new JerseyNumber("Is1 Player", 1939)},
{5, new JerseyNumber("Ny1 More", 1952)},
}
},
{
TeamName.Team2,
new Dictionary<int,JerseyNumber >()
{
{3, new JerseyNumber("Ma2 Player", 1948)},
{4, new JerseyNumber("Ta2 Player", 1939)},
{5, new JerseyNumber("Kea2 More", 1952)},
}
},
{
TeamName.Team3,
new Dictionary<int,JerseyNumber >()
{
{3, new JerseyNumber("A3 Player", 1948)},
{4, new JerseyNumber("Py3 Player", 1939)},
{5, new JerseyNumber("Mae More", 1952)},
}
},
{
TeamName.etc,
new Dictionary<int,JerseyNumber >()
{
{3, new JerseyNumber("Babe Ruth", 1948)},
{4, new JerseyNumber("Lou Gehrig", 1939)},
{5, new JerseyNumber("Joe DiMaggio", 1952)},
{7, new JerseyNumber("Mickey Mantle", 1969)},
{8, new JerseyNumber("Yogi Berra", 1972)},
{10, new JerseyNumber("Phil Rizzuto", 1985)},
{23, new JerseyNumber("Don Mattingly", 1997)},
{42, new JerseyNumber("Jackie Robinson", 1993)},
{44, new JerseyNumber("Reggie Jackson", 1993)},
}
},
};
public Form1()
{
InitializeComponent();
foreach (int key in allRetiredNumbers.Keys)
{
team.Items.Add(key);
}
}
private void number_SelectedIndexChanged(object sender, EventArgs e)
{
JerseyNumber jerseyNumber = allRetiredNumbers[(TeamName)team.SelectedItem][(int)number.SelectedItem];
//JerseyNumber jerseyNumber = retiredNumbers[(int)number.SelectedItem];
nameLabel.Text = jerseyNumber.Player;
yearLabel.Text = jerseyNumber.YearRetired.ToString();
}
private void team_SelectedIndexChanged(object sender, EventArgs e)
{
number.Items.Clear();
foreach (int key in allRetiredNumbers[(TeamName)team.SelectedItem].Keys)
number.Items.Add(key);
}
}
}