C# 在其他方法中调用实例值

C# 在其他方法中调用实例值,c#,methods,C#,Methods,我不知道如何用另一种方法访问我的实例。我有这套代码 Card rorbcard = new Card(); Deck deck = new Deck(); deck.Shuffle(); rorbcard = deck.TakeCard(); Start0: Console.Clear(); Console.WriteLine("Allright lets play! Red or black?");

我不知道如何用另一种方法访问我的实例。我有这套代码

Card rorbcard = new Card();
        Deck deck = new Deck();
        deck.Shuffle();
        rorbcard = deck.TakeCard();
        Start0:
        Console.Clear();
        Console.WriteLine("Allright lets play! Red or black?");
        string userValue0 = Console.ReadLine();
        switch (userValue0.ToLower())
        {
            case "red":
                {
                    if (rorbcard.Suit.Equals(Suit.Diamonds))
                        {
                            Console.WriteLine("{0},\n Correct give 2 drinks",
                          rorbcard.ToString());
                            Thread.Sleep(2000);
                        }
                    else if (rorbcard.Suit.Equals(Suit.Hearts))
                    {
                        Console.WriteLine("{0},\n Correct give 2 drinks",
                        rorbcard.ToString());
                        Thread.Sleep(2000);
                    }
                    else
                    {
                        Console.WriteLine("{0},\n Wrong sucka take 2 drinks",
                        rorbcard.ToString());
                        Thread.Sleep(2000);
                    }
                }
我试图在另一个方法中使用rorbcard.ToString(),但我不知道如何引用它。这是另一种方法

 public void HighLow()
    {
        //highlow part of the game
        Deck deck = new Deck();
        deck.Shuffle();
        Card highLow = new Card();
        highLow = deck.TakeCard();
    Start1:
        Console.Clear();
        Console.WriteLine("Your Hand:");
        Grid.WriteAt(rorbcard.ToString(), 0, 1);
        Console.WriteLine("\n\nDo you think that the next card will higher,lower,\n or
        equal to the {0}. Enter high, low, or equal\n", rorbcard);
        string uservalue1 = Console.ReadLine();
        switch (uservalue1.ToLower())
        {
            case "high":

                if (highLow.CardNumber > rorbcard.CardNumber)  <-----Issue
                {
                    Console.WriteLine("{0},\n Correct give 4 drinks",
                    highLow.ToString());
                    Thread.Sleep(2000);
                }
                else
                {
                    Console.WriteLine("{0},\n Wrong  drink 4\n", highLow.ToString());
                    Thread.Sleep(2000);
                }
public void HighLow()
{
//游戏的高低部分
甲板=新甲板();
洗牌();
卡片高低=新卡片();
highLow=deck.TakeCard();
Start1:
Console.Clear();
控制台。WriteLine(“你的手:”);
WriteAt(rorbcard.ToString(),0,1);
Console.WriteLine(“\n\n您认为下一张卡会更高、更低还是更高?”
等于{0}。输入高、低或相等值(rorbcard);
字符串uservalue1=Console.ReadLine();
开关(uservalue1.ToLower())
{
案例“高”:
如果(highLow.cardname>rorbcard.cardname)您可以执行以下任一操作

a、 作为参数传递给
HighLow()
like

public void HighLow(string rorbcard)
b、 创建一个类级变量。为其赋值并在
HighLow()中使用该值

class MyClass
{
    private string rorbCardClassLevel;

    private void MyrorbCardMethod
    {
        //Other code lines.

        //Inside case statement
        rorbCardClassLevel = rorbcard.ToString();
    }

    private void HighLow()
    {
        //Use rorbCardClassLevel here.            
    }
}

我所需要做的就是将实例放在方法外部和类内部。Duh

如何创建类级变量?如何分配rorbcard=deck.TakeCard();?如果在HighLow()中使用rorbCardClassLevel时这样做方法它不会有RoBoCK的任何功能。就像我不能把.CalDeNo.或者.Too.在一个侧面的注释调用谢谢你帮助你基本上遵循Nikhil的建议(你创建了私有变量),你应该考虑把他的答案标记为接受的。