static void Main(string[] args)
        {
            List<string> lt = new List<string>();
        }
        public static void SayHi()
        {
            
            Console.WriteLine("你好!你这个同志!");
        }为什么我在SayHi()方法里不能调用lt
怎样才能解决这个问题》

解决方案 »

  1.   

    List <string> lt = new List <string>();
    static void Main(string[] args)
            {
                
            }
            public static void SayHi()
            {
               
                Console.WriteLine("你好!你这个同志!");
            } 
      

  2.   

     List <string> lt;
    static void Main(string[] args)
            {
                lt = new List <string>();
            }
      

  3.   

    static void Main(string[] args) 
            { 
                List <string> lt = new List <string>(); 
                类名.SayHi(lt);
            } public static void SayHi(List<string> list) 
            { 
                //在这里使用list--即外面传递过来的lt
                Console.WriteLine("你好!你这个同志!"); 
            } 
      

  4.   

    static List <string> lt = new List <string>(); 
    public static void SayHi() 

    }
      

  5.   

    static List <string> lt = new List <string>(); 
      

  6.   


    LZ没有定义list对象啊,支持1L的
      

  7.   

    学习总结:竟然要加个STATIC
    不错不错~学到很多
    哈哈,兄弟们你们真牛呀!
      

  8.   

    并共享上,为解决这个问题的
    无聊做的遍历找。MP3的文件~哈哈,无聊。。~~
     static List<string> lt = new List<string>();
            static void Main(string[] args)
            {
                string path = @"c:\\1";
                Getfile(path);
                Console.WriteLine("现在我要查找.MP3文件了哦!");
                foreach (string f in lt)
                {
                    Console.WriteLine(f);
     
                }
                Console.Read();            
            }        public static void Getfile(string path)
            {
              
                try
                {
                    DirectoryInfo dir = new DirectoryInfo(path);
                    foreach(DirectoryInfo var in dir.GetDirectories())
                    {
                        Console.WriteLine(var.ToString());
                        FileInfo[] file = dir.GetFiles();
                        foreach (FileInfo f in file)
                        {
                            Console.WriteLine(f.ToString());
                            switch (f.Extension.ToString())
                            {
                                case ".txt":
                                    Console.WriteLine("这是文档文件");
                                    break;
                                case ".mp3":
                                    Console.WriteLine("这是MP3文件");
                                    lt.Add(f.ToString());
                                    break;
                                case ".mp4":
                                    Console.WriteLine("这是MP4文件");
                                    break;
                                default:
                                    Console.WriteLine("这是未知文件!");
                                    break;
                            }
                        }
                        Getfile(dir + "\\" + var);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("有些保密文件不能读取!");
                }
                finally
                {            }
      

  9.   

    我觉得楼主应该这样声明方法
    public static List <string> Getfile(string path)
    而不是声明一个类级变量
      

  10.   

    static List <string> lt = new List <string>(); 
    static void Main(string[] args) 
            { 
                
            } 
            public static void SayHi() 
            { 
              
                Console.WriteLine("你好!你这个同志!"); 
            }
      

  11.   

    static void Main(string[] args)
            {
                List<string> lt = new List<string>();
                string path = @"F:\KuGou1";
                Getfile(path,lt);
                Console.WriteLine("现在我要查找.MP3文件了哦!");
                foreach (string f in lt)
                {
                  Console.WriteLine(f);
                }
                Console.Read();            
            }        public static List<string> Getfile(string path,List<string> lt)
            {
              
                try
                {
                    DirectoryInfo dir = new DirectoryInfo(path);
                    foreach(DirectoryInfo var in dir.GetDirectories())
                    {
                        Console.WriteLine(var.ToString());
                        FileInfo[] file = dir.GetFiles();
                        foreach (FileInfo f in file)
                        {
                            Console.WriteLine(f.ToString());
                            switch (f.Extension.ToString())
                            {
                                case ".txt":
                                    Console.WriteLine("这是文档文件");
                                    break;
                                case ".mp3":
                                    Console.WriteLine("这是MP3文件");
                                    lt.Add(f.ToString());
                                    break;
                                case ".mp4":
                                    Console.WriteLine("这是MP4文件");
                                    break;
                                default:
                                    Console.WriteLine("这是未知文件!");
                                    break;
                            }
                        }
                        Getfile((dir + "\\" + var),lt);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("有些保密文件不能读取!");
                }
                finally
                {
                 
                }
                return lt;
            }
        }是不是该改成这样?
      

  12.   

    lt=Getfile(path); 
    public static List <string> Getfile(string path)其他地方自己再调一下
      

  13.   

    难道是括号错误???
    static void Main(string[] args) 
            { 
                List <string> lt = new List <string>(); 
            } 
            public static void SayHi() 
            { 
                
                Console.WriteLine("你好!你这个同志!"); 
            } 
    改成
    static void Main(string[] args) 
            { 
                List <string> lt = new List <string>(); 
            
            public static void SayHi() 
            { 
                
                Console.WriteLine("你好!你这个同志!"); 
            } 
     
         }
      

  14.   

     static List<string> lt = new List<string>(); 
            static void Main(string[] args)
            {
                SayHi();
            }
            public static void SayHi()
            {
                
                Console.WriteLine("你好!你这个同志!");
            } 
      

  15.   

    It放在外面实例化啊,或者在Sayhi里面实例化就行了