C#中静态方法的运用和字符串的常用方法(seventh day)

又来到了今天的总结时间,由于昨天在云和学院学的知识没有弄懂,今天老师又专门给我们非常详细地讲了一遍,在这里非常谢谢老师。O(∩_∩)O 话不多说,下面就开始为大家总结一下静态方法的运用和字符串的常用方法。

理论:静态方法  static

[访问修饰符] [static] 返回值类型 方法名()

{

方法体;

}

•命名规则:方法名开头大写,参数名开头小写,参数名、变量名要有意义
•方法的调用,对于静态方法,调用有两种方式
•如果在同一个类中,直接写名字调用就行了.
•或者类名.方法名();
•return可以立即退出方法.
 
常用的已经学过的方法:
•Console.WriteLine();
•Console.Write();
•Console.ReadLine();
•Console.ReadKey();
•int.Parse(string);
•Convert.ToInt32(string);
•对于由static修饰的方法,使用:类名.方法名()调.
•如果在类中调用自己的由static修饰的方法,可以省略类名.
 
变量的作用域
•在方法中定义的变量称为局部变量,其作用域从定义开始,到其所在的大括号结束为止.
在一个方法中想要访问另一个方法中的变量,怎么办?
•两种解决方法:参数和返回值
 方法中的return语句导致函数立即返回。在返回值为void的函数中return,在返回值非void的函数中return值
 
 方法的out参数和ref参数

ref  函数参数默认是值传递的,也就是“复制一份”,例子:

out 则是内部为外部变量赋值,out一般用在函数需要有多个返回值的场所。

函数的重载

构成重载的条件:参数类型不同或者参数个数不同(不严谨的),与返回值无关。

字符串的常用方法

将str的字符串转换为大写:str.ToUpper()

将str的字符串转换为小写:str.ToLower()

截取字符串 :  str.Substring(参数1,参数2) //参数1是从哪个位置开始截取,参数2是截取的长度。(注:位置都是从0开始数起)

获取字符串的索引:str.IndexOf(要获取索引的字符)

字符串的替换:str.Replace("要替换的字符(旧值)“,”替换的结果(新值)“

组合字符串:String str=String.Join("|",strs) //String[]strs={"a","b","c","d"}

去掉空格:str.Trim()

尝试转换 :Console.WriteLine("请输入一个数字");  int num;  int.TryParse(Console.ReadLine(), out num);// 第一个参数是 要转换的字符串,转换后的结果

判断字符是否为空:String str=String.Empty; String.IsNullOrEmpty(str) //为空的话返回true

Var: 从 Visual C# 3.0 开始,在方法范围中声明的变量可以具有隐式类型 var。 
        
   隐式类型的本地变量是强类型变量(就好像您已经声明该类型一样),但由编译器确定类型。 下面的两个 i 声明在功能上是等效的: 
       例:    var i = 10; // implicitly typed
                 int i = 10; //explicitly typed

实操:
* 找出数组中最大的整数
static void Main(string[] args)
        {
            int[] num = {21,-5,32,14,1 };

            int max = SearchNum(num);

            Console.WriteLine(max);

            Console.ReadKey();

        }
       
         /// <summary>
        /// 找出数组中最大的整数
     /// </summary>
        /// <param name="num">整数数组</param>
        /// <returns>最大值</returns>
        static int SearchNum(int[]num)
       {
            int max = 0;

            for (int i = 0; i < num.Length; i++)

           {

                if(max<num[i])

                {

                    max = num[i];

                }
           }
                return max;
        
       }
    

  重复让用户输入一个数,判断该数是否是质数,输入q结束

    static void Main(string[] args)
        {
              IsPer();

            Console.ReadKey();

        }

        static void IsPer()
        {
            while (true)
            {
                Console.WriteLine("亲请输入一个数字,按q结束");
string str = Console.ReadLine();
if (str == "q") { Console.WriteLine("输入结束");
break; } else {
int num = Convert.ToInt32(str);
bool b = true; for (int i = 2; i <num-1; i++) { if (num % i == 0) { Console.WriteLine("不是质数");
b
= false; break; } } if (b == true) { Console.WriteLine("是质数"); } } } }

将一个字符串数组输出为|分割的形式,比如“梅西|卡卡|郑大世”(用方法来实现此功能)

       static void Main(string[] args)
        {
            string[] strArray = {"梅西","卡卡","C罗" };

Oper(strArray);
Console.ReadKey(); } static void Oper(string[] strs) { string resoult = string.Empty;
for (int i = 0; i < strs.Length-1; i++) { resoult += strs[i] + "|"; } resoult += strs[strs.Length - 1]; Console.WriteLine(resoult); }

用方法实现找出一个int类型数组中最大值和最小值(用out)

   static void Main(string[] args)
        {
            int[] num = {-5,-11,5,0,19,30};

            int max;

            int min;

            Max(num, out max);

            Console.WriteLine(max);

           
            Min(num, out min);

            Console.WriteLine(min);

            Console.ReadKey();
        }
        static void Max(int[]num,out int max)
        {
            int m = 0;

            for (int i = 0; i < num.Length; i++)
         {    
             if(m<num[i])

              {
                  m = num[i];  
               } 
            } 

            max = m;
        }

        public static void Min(int[]num,out int min)
        {

            int m = 0;

            for (int i = 0; i < num.Length; i++)
           {
                if(m>num[i])
                {
                   m = num[i];
                }     
           }

            min = m;        
        }
       
static void Main(string[] args)
        {
            int[] num = {-5,-11,5,0,19,30};

            int max;

            int min;

            Max(num, out max);

            Console.WriteLine(max);

           
            Min(num, out min);

            Console.WriteLine(min);

            Console.ReadKey();
        }
        static void Max(int[]num,out int max)
        {
            int m = 0;

            for (int i = 0; i < num.Length; i++)
         {    
             if(m<num[i])

              {
                  m = num[i];  
               } 
            } 

            max = m;
        }

        public static void Min(int[]num,out int min)
        {

            int m = 0;

            for (int i = 0; i < num.Length; i++)
           {
                if(m>num[i])
                {
                   m = num[i];
                }     
           }

            min = m;        
        }
       

要求用户输入一个数字,判断如果是正数那么加一,如果是负数那么减一 方法实现(用ref)

static void Main(string[] args)
        {
             int a = 5;
            int resoult= Operator(ref a);//传进来的参数只是一个(复制)

            Console.WriteLine(a);
            Console.WriteLine(resoult);
            Console.ReadKey();
        }

        static int Operator(ref int num)  //按引用传递
        {
           return  num > 0 ? ++num : --num;
          
        }

 好了,今天就先写到这里吧。加油!

原文地址:https://www.cnblogs.com/ysaw/p/4093398.html