Jak wyświetlić wartość zmiennej?

1

Witam. Kod jak poniżej. Za pomocą metidy get_choice nie jestes w stanie wyświetlić wartości zmiennej decision, mimo przypsiania jej wartości mychoice z metody getchoice. W czym tkwi pewnie banalny problem?

 using System;

class Method
{
    public static void Main()
    {
        Method method = new Method();
       
        method.displayMenu();
        method.Case();
        method.get_Choice(); 


    }
    //display menu
    void displayMenu()
    {
        Console.WriteLine("A-add new addres");
        Console.WriteLine("D-delete adress");
        Console.WriteLine("E-edit adress");
        Console.WriteLine("Q-quit");
        
    }
   
    void get_Choice()
    {
        Method method1 = new Method();
        string decision=method1.getChoice();
        Console.WriteLine("Wybrałeś parametr" +decision);
        Console.ReadLine();
        
       

        
    }
     string getChoice()
    {
        string myChoice;
        myChoice = Console.ReadLine();
        return myChoice;
    }
     void Case()
     {
         Method method2 = new Method();
         string case1=method2.getChoice();
         switch (case1)
         { 
             case "a":
                 Console.WriteLine("New address will be added");
                 break;
             case "d":
                 Console.WriteLine("Choosen adress will be deleted");
                 break;
             case "e":
                 Console.WriteLine("Choosen adress will be edited");
                 break;
             case "q":
                 Console.WriteLine("Quit command will be executed");
                 break;
             default:
                 Console.WriteLine();
                 break;


         }
         Console.ReadLine();
     }
    }
0

Ale ten kod jest bez sensu. Po co robisz:

Method method1 = new Method();
string decision=method1.getChoice();

skoro możesz po prostu wowołać metodę getChoice() na this? Poza tym napisz po polsku jaki jest problem...
0

class Method, switch (case1) - tego jeszcze tutaj nie grali...

Tę metodę

string getChoice()
    {
        string myChoice;
        myChoice = Console.ReadLine();
        return myChoice;
    }

Można napisać tak:

string getChoice()
{
    return Console.ReadLine();
}

Dzięki czemu od razu widać, że jej istnienie jest pozbawione sensu.

0
Shalom napisał(a):

Ale ten kod jest bez sensu. Po co robisz:

Method method1 = new Method();
string decision=method1.getChoice();

> skoro możesz po prostu wowołać metodę getChoice() na this? Poza tym napisz po polsku jaki jest problem...

Ok dzięki za rady panowie. Poprawiłem kod według waszych wskazówek. Mniej idiotyzmów jest w nim przynajmniej.
Problem jest w tym, iż metoda:
```csharp
void get_Choice()
    {
      
       
        Console.WriteLine("Wybrałeś parametr" +this.getChoice());
        Console.ReadLine();
        
       

        
    } 

nie pokazuje mi wybranej przez użytkownika wartości.

0

A gdzie ma ci ją pokazać? Console.ReadLine() zwraca to co wpisał użytkownik, ale ty ze zwrotem nic nie robisz. Nie zapisujesz, nie wyświetlasz. No to gdzie chcesz go zobaczyć?

1 użytkowników online, w tym zalogowanych: 0, gości: 1