コード例 #1
0
        private void btnExecute_Click(object sender, EventArgs e)
        {
            string           sportsmenName = txtSportsmenName.Text.Trim();
            StrategyRun      run           = StrategyRunFactory.make(cbRun.SelectedItem.ToString());
            StrategyJump     jump          = StrategyJumpFactory.make(cbJump.SelectedItem.ToString());
            StrategySwim     swim          = StrategySwimFactory.make(cbSwim.SelectedItem.ToString());
            Sportsmen        sportsmen     = new Sportsmen(sportsmenName, run, jump, swim);
            SportsmenCommand cmd           = (SportsmenCommand)lbCommands.SelectedItem;

            txtLog.AppendText(sportsmen.execute(cmd) + Environment.NewLine);
        }
コード例 #2
0
        public override string execute(Sportsmen s)
        {
            StringBuilder sb    = new StringBuilder();
            bool          first = true;

            foreach (SportsmenCommand cmd in list)
            {
                if (first)
                {
                    first = false;
                }
                else
                {
                    sb.Append(", ");
                }
                sb.Append(cmd.execute(s));
            }
            return(sb.ToString());
        }
コード例 #3
0
 public abstract string execute(Sportsmen s);
コード例 #4
0
 public string execute(Sportsmen s)
 {
     return(s.Jump());
 }
コード例 #5
0
 public string execute(Sportsmen s)
 {
     return(s.Swim());
 }
コード例 #6
0
 public string execute(Sportsmen s)
 {
     return(s.Run());
 }
コード例 #7
0
 public override string execute(Sportsmen s)
 {
     return(string.Format("%d x %s", count, cmd.execute(s)));
 }