如何在每个字符串后面有一个逗号但不在前面

时间:2017-01-27 21:53:07

标签: c#

我的课程出现问题,它在显示字符串之前显示逗号,我无法找到一种方法将逗号放在前面并将其保存在所有其他位置 < / p>

SELECT * 
FROM   `events` 
WHERE  '2017-01-29' BETWEEN start_date='2017-01-28' 
                    AND     end_date='2017-01-31' 

如果您需要,这里是主要代码

using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace Carnival
    {
        class Player
        {
            public string Name { get; set; }
            public double SpendingMoney { get; set; }
            public string PrizesWon { get; set; }


            //constructors
            public Player( string n, double sp)
            {
                Name = n;
                SpendingMoney = sp;
                PrizesWon = "";

            }
            //methods

                public string Play(GameBooth aGames)
            {
                string newPrize;
                if (SpendingMoney >= aGames.Cost)
                {
                    newPrize = aGames.Start();
                    //here is what I need to fix                    
                    PrizesWon =  "," + newPrize  + PrizesWon ;
                    return newPrize;
                     }
                else
                {
                    return "error no money fool";
                }
            }

        }
    }

这是我的另一课,如果你也需要,但你可能没有

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Carnival
{
    class Program
    {
        static void Main(string[] args)
        {
            //local variables
            string name;
            double money;
            int choice = 0;
            string newPrize;

            //Game objects.
            GameBooth balloonDartToss = new GameBooth(2, "tiger         plush", "sticker");
            GameBooth ringToss = new GameBooth(2, "bear keychain", "pencil");
            GameBooth breakAPlate = new GameBooth(1.5, "pig plush", "plastic dinosaur");

            Console.ForegroundColor = ConsoleColor.Cyan;

            //asking player name
            Console.Write("Welcome to the Carnival. What is your name? ");
            name = Console.ReadLine();

            //asking how much spending money the player has
            Console.Write("How much money do you have? ");
            money = Convert.ToDouble(Console.ReadLine());
            Console.ResetColor();

            //Creating player object.
            Player Gambler = new Player(name, money);

            //main program loop
            while (choice != 4)
            {
                //print menu. Check out the local method below
                printMenu();

                //retrieve user choice. See the local method below
                choice = getChoice();

                //main switch. User Choices:
                //  1 - we play Baloon Darts Toss and show prize
                //  2 - we play ring Toss and show prize
                //  3 - we play Break a Plate and show prize
                //  4 - Show users all his prizes
                switch (choice)
                {
                    case 1:
                        newPrize = Gambler.Play(balloonDartToss);
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine(newPrize);
                        break;
                    case 2:
                        newPrize = Gambler.Play(ringToss);
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine(newPrize);
                        break;
                    case 3:
                        newPrize = Gambler.Play(breakAPlate);
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine(newPrize);
                        break;
                    case 4:
                        Console.ForegroundColor = ConsoleColor.Yellow;
                        Console.WriteLine("{0}, here is your prize list: {1}", Gambler.Name, Gambler.PrizesWon);
                        Console.ResetColor();
                        break;
                }//end switch
            }//end while

            //next line simply pauses the program until you hit Enter.
            Console.ReadLine();
        }//end main

        //this method prints the main menu
        public static void printMenu()
        {
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine();
            Console.WriteLine("Select the game you would like to play:");
            Console.WriteLine("1. Balloon Dart Toss");
            Console.WriteLine("2. Ring Toss");
            Console.WriteLine("3. Break a Plate");
            Console.WriteLine("4. Get Prizes and Leave Carnival");
            Console.Write("Enter Your Choice: ");
            Console.ResetColor();
        }//end printMenu

        //this methods accepts user input 1-4
        public static int getChoice()
        {
            Console.ForegroundColor = ConsoleColor.Yellow;
            int input = 0;
            do
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                input = Convert.ToInt32(Console.ReadLine());
                if (input < 1 || input > 4)
                {
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.WriteLine("Out of range. Input 1-4 only");
                    Console.Write("Enter your choice: ");
                    Console.ResetColor();
                }
            } while (input < 1 || input > 4);
            Console.ResetColor();
            return input;
        }
    }
}

2 个答案:

答案 0 :(得分:1)

将行更新为:

PrizesWon = string.IsNullOrEmpty(PrizesWon) ? newPrize : newPrize + "," + PrizesWon;

这会使用conditional operator返回不同的结果,具体取决于PrizesWon中是否已包含某些内容。

答案 1 :(得分:0)

在您的代码中,您在fib之前放置了(,)。要解决这个问题,你必须把它放在newPrize变量后面,它看起来像这样:

PrizesWon

我希望你的问题能够得到解决。