System\System.Collections.Generic\System.Text都是系统定义好的命名空间;
而可以使用namespace命令,定义自己的命名空间。

已建好的命名空间使用using命令引入,如:
程序的开头引入的System命名空间,就可以使用Console类了。

如果不引入System命名空间,又要使用Console,则必须加上System命名空间名,如:System.Console.WriteLine(“Hello Accp .NET);

1 自定义方法
   
语法:  访问修饰符  返回值类型  方法名(参数列表)
            {
                  //
方法的主体
             }

1$ 访问修饰符(就是访问的级别

   public  
就表示其他类可以访问
   private  
就只能在类里面使用

2$ 方法的返回类型(void,int,float,double,bool,string

3$ 方法名:有实际意义,动宾短语,表示能做一件事,单词首字母大写

4$ 参数列表:“类型 参数名”,各参数之间用逗号分开。

5$ 方法的主体:就是代码

2 向方法中传递参数

1$ 值传递:就是只把参数的值传到了方法里面,如果在方法中对参数的
          
值进行了修改,在方法调用后,参数仍是原来值。

      
即:传递的是变量的副本,在方法中对副本的处理,不影响原值。

2$  static通过类名直接调用方法
    static
C#中的关键字,意为“静态的”

   
同在一个类中的方法可直接调用
   
静态方法可通过类名调用,如:Console.WriteLine();
   

3$ 按引用传递参数
  
可以在方法调用之后,仍然保留对参数值的修改。
  
使用ref关键字:
  
   
在方法定义时和方法调用时都要使用ref修饰参数,而且使用ref修饰
  
的参数必须在调用的方法中赋值

小结:
按值传递,传递的是变量的副本,变量如在调用种有赋值,结果并不保留
按引用传递,传递的是变量本身,如果在调用中有赋值,结果将保留。

3 IDE使用技巧进阶(VS的重构功能)暂略

4 C#中的String

    C#
中也有String类,位于System命名空间,属于.NET Framework类库中。
   
平时使用的strings小写)是String类在C#中的别名

常用的字符串处理方法(暂略,详见p73页表3-1

   1
C#中可以使用“==”比较两个字符串,而Java中不可,只能用Equals.
     
返回值为bool值,打点调用

   2
int ComparestrA,strB)前后值比较,小于返回负数,等于返回0
                         
大于返回值正数。(相当于A-B),打点调用。

     
如:abc.Compare(bcd);

   3
int IndexOfstring value),获得指定value字符串在当前字符串中
                         
第一个匹配项的索引。
       
如果有,返回索引值;没有则返回-1        打点调用

   4
int LastIndexOfstring value
       
获得指定value字符串在当前字符串中,最后一个匹配项的索引。
       
如果有,返回索引值;没有则返回-1        打点调用

   5
string Joinstring separator, string[] value

     
唯一一个静态方法,类名调用。 stringJoin()

    
把字符串数组value中的,每个字符串用指定的分隔符separator连接,
    
返回连接后的字符串

   6
string[] Split(char separator)
      
用指定的分隔符separator分割字符串,返回分隔后的字符串数组
      
打点调用。

      
如果分隔符是原串中的一个字符,则分好字符串数组中不再有分
       
隔字符了。

  
7string SubString(int startIndex, int length)
      
从指定的位置startIndex开始检索长度为length的子字符串,返回
      
截取的子字符串。(含开始位置的字符)

       Java
中第二个参数是结束位的索引,但子串中不包含结束位。
     
   8
string ToLower()
      string ToUpper()
      string Trim()

     
以上三个同Java (暂略)
    

注意:Split()方法不是静态的,所以要使用一个具体的字符串对象来调用
     
其参数是想使用的分割符,且必须是字符(char)类型的。
     
即:字符串.Split()

      Join()
方法是静态的,所以可直接使用string类名调用,参数有两个:
     
第一个是连接字符串用的分隔符,是字符串
     
第二个是要连接的字符串数组
     
即:stringJoin(“_”,字符串数组)


5 Format方法(格式化输出字符串)

    String
类提供了强大的Fromat()方法来格式化字符串
  
WriteLine()Console类中的方法)
 
  
 语法: string myString = string.Format(“格式字符串",参数列表);
    (
用法同Console.WriteLine())

6 C#中进行类型转换

1$ 简单的----数值型数据的相互转换

   1$$
隐式类型转换:

     
对于数值类型,任何类型A,只要其取值范围完全包含在类型B
     
取值范围内,就可以隐式转换为类型B(即小——大,自动转换)

   2$$
显式类型转换:
     
取值范围大的类型转换为取之范围小的类型时,就需要显式转换
     
     
语法: (数据类型符)要被转换的变量名

   3$$
注意:1)类型转换后,浮点数值直接取整,不会四舍五入
             2
)显式(强制)类型转换并不影响变量的原值

2$ 数值类型与字符串之间的转换
 
 1$$
字符串转换为数值型:使用Parse()方法   parse : 解析

    
字符串转换为整型:               intParse(string)
    
字符串转换为单精度浮点型:       floatParse(string)
    
字符串转换为双精度浮点型:       doubleParse(string)

    
注意:字符串必须是数字的有效表示形式,如果是拼音的就不行了。

 
2$$ 数值型转换为字符串(同java中的ToString()方法)
     
如: int age = 18
           string myage = age.ToString();

  3$$
使用Convert类进行转换
      Convert
类为每种数据类型转换都提供了一个静态方法
      Convert.ToInt32
(被转换数)         转换为整型
      Convert.ToSingle
(被转换数)        转换为float
      Convert.ToDouble
(被转换数)       转换为double
      Convert.ToString
(被转换数)        转换为string

     
注意:使用Convert.ToInt32()方法转换时,四舍五入