2015-10-26 c#2

二.值类型和引用类型

    2.1  值类型:所有的数值类型都是值类型(short int long float double ...),枚举,布尔类型,结构

    2.2  引用类型:对象 ,字符串,object,数组

           2.2.1    引用类型的值是储存在堆里面的,栈里面储存的只是它的引用地址.

           2.2.2    引用类型的赋值,实际上就是地址的拷贝

    2.3  要去调用一个类里面的非静态成员(字段,方法),需要通过类的一个对象去调用

           要去调用一个类里面的静态成员,只需要通过类去调用即可。

    2.4  当实例化一个类的对象的时候,堆里面会将类里面的所有的非静态成员(变量,方法)生成。

    2.5  当去实例化一个类的对象的时候,首先会在堆里面检索该类的对象是否存在,如果存在就会拷贝一份

    2.6  当去实例化一个对象的时候,类里面所有的成员(静态或非静态,值类型或引用类型)都是储存在堆里面

三.装箱和拆箱

    3.1  装箱:值类型转换为引用类型

          int i=10;

          string s=i.tostring();

          拆箱:引用类型转换为值类型

          string s="10";

          int i=convert.toint32(s);

    3.2  数据类型转换

           隐式转换:低精度转为高精度,直接转

           int i=123;

           Double b=i;

           显式转换:高精度转为低精度,必须指明要转换的目标类型,由于数据的差异,有可能丢失部分数据

           double x=1223.4;

           int a;

           a=(int)x;

    3.3   ??

            a=b??c ---->  b为null吗,为null则a=c不为null则a=b

                                                                string(一)

一.字符串

    1.1 字符串转变为数组

          string s="asdfghk"

          char[] a=s.tochararray();

     

     1.2  str.Length表示字符串里面字符的个数。

     1.3  字符串对象一旦被创建,这个对象就不能被修改。

二.常用方法

    2.1  equals:判断两个字符串是否相同, 如果相同返回值为true,否则为false

           console.writeline(string.equals("aa","bb"));

    2.2  当一个类是一个静态类的时候,类里面的所有成员都是静态的

    2.3  定位字符串

          StartWith/EndWith 判断一个字符串是否以一个字符串_开头(结尾),返回值true/false

          indexOf/LastindexOf 某个指定的字符或字符串第一次(最后一次)出现的位置

   2.4  截取字符串 Substring

   2.5  插入和填充字符串

         2.5.1   insert方法

                   string str1 = "hi";

                   string str2 = "world";

                   string str3=str1.Insert(1,str2);

         2.5.2  PadLeft/PadRigth方法

                   string str1=”hi”;

                   string str2=str1.PadLeft(4,’@’);    -------left 填充到左边,right填充到右边

                   Console.WriteLine(str2);

                   结果为:@@hi

   2.6   删除和剪切字符串Remove方法

           2.6.1  Remove(开始删除的位置,删除的数量)

           2.6.2  Trim

                    1.去除掉前后空格

                    2.去除特殊字符

                       Char[] str1={‘@’,’#’,’$’};

                       string str2=”@China$#”;

                       string str3=str2.Trim(str1);

                       Console.WriteLine(str3)

                       结果为China

          2.6.3  TrimStart(去掉前面的空格),TrimEnd(去掉后面的空格)

          2.6.4  CopyTo方法

                   string str1=”China”;

                   char[] str2=new char[100];

                   str1.CopyTo(0,str2,0,3);//要复制的字符(str1)的起始位置,目标数组(str2),指定目标数组中开始存放的位置,要复制的字符个数

    2.7  替换字符串

            string str1=”hello”;

            string str2=str1.Replace(“ll”,”r”);

            Console.WriteLine(str2);

   2.8  format 将内容传到字符串里面去

            string.format("年龄是{0},姓名是{1}",a,b);

posted @ 2015-10-31 17:34  以深  阅读(174)  评论(0编辑  收藏  举报
TOP