学习笔记之C#parm、命名空间、字符串处理
2011-12-04 14:28
531 查看
一、Param
(一)Object类型:
1.任何类型都可以自动转换成Object类型:任何子类都可以默认转化为父类,而Object类型是所有类的父类
(二)Params(可变参数)
1.如果在传数组参数的时候在数组前加上params,就变成了一个可变参数,可以直接传数组的元素
如static void Test(params int[] arr){ }
2.可变数组作为参数时必须是最后一个参数
a)static void Test(params int[] arr,int age){ }//错误
b)static void Test(int age,params int[] arr){ }//正确
二、namespace(命名空间)
(一)作用
用于解决类的重名问题,可以看做“类的文件夹”
(二)引用命名空间
1.如果代码和被使用的类在一个namespace则不需要using
2.在不同命名空间下的类调用有两种方法
a)写全称 namespace.class
b)先using引用命名空间,再调用(多数情况下使用)
4.命名空间不能用数字开头
5.引用命名空间小技巧:写正确类名,ctrl+.
(三)命名空间包含命名空间
.net的命名空间是逻辑划分的,和物理上的位置没有关系。system是.net的根命名空间
如:namespace TestNameSpace.SubTestNameSpace { }
三、字符串处理
(一)string
1.string类型可以看做是char的只读数组,可以通过下标来访问。
string s="hello,world!";
Console.WriteLine(s[1]);//输出:e
2.C#中字符串有一个重要的特性:不可改变性
3.字符串修改:可以用s.ToCharArr()方法取得字符串的char数组,修改数组后,创建一个新的字符串,将数组赋值给新的字符串,如:
4.用双引号引起来的字符串相当于创建了一个字符串对象
如:
string s="hello,world!";
相当于new了一个字符串对象s
(二)字符串的常用方法
1.ToLower()方法:返回值为string。把字符串转换为小写
2.ToUpper()方法:返回值为string。把字符串转换为大写
3.无论是Tolower()还是ToUpper()方法都无法改变原字符串,而是将字符串的大小写转换后的结果作为一个全新的字符串,通过返回值返回。两者都是非静态方法
4.Equals()方法:比较实例和参数,返回布尔值。其中一个重载是Equals(string a,StringComparation.OrdinalIgnoreCase),其中第二个参数表示忽略大小写
5.字符串的连接“+”:“+”连接两个字符串的时候,如果“+”号两边有一个是字符串类型,那么另一个也会自动转换成字符串类型
6.ToString()方法:返回值为string。任何类型都可以调用ToString()方法转换成字符串
7.Split()方法:返回值为string[]。字符串按照指定的分隔符分割为字符串数组
a)string[] Split(params char[] separator):可传入char数组的元素
b)string[] Split(char[] separator,StringSplitOptions options):第二个参数可选择是否在返回的string数组中保留空白字符串
8.Replace()方法:返回值为string。替换字符串中的字符或字符串
string Replace(string oldValue,string newValue)将字符串中出现oldValue替换为newValue
9.Substring()方法:返回值为string。截取子字符串
a)Substring(int startIndex):取从指定位置startIndex开始一直到最后的子字符串
b)Substring(int startIndex,int length):取从指定位置startIndex开始,指定长度为length的子字符串
10.Contains(string value):返回值为bool。判断字符串中是否含有子字符串value
11.StartWith(string value):返回值为bool。判断字符串是否以value开始
12.EndWith(string value):返回值为bool。判断字符串是否以value结束
13.IndexOf(string value):返回值为Int。字符串中,返回value第一次出现的位置。如果不包含返回-1
(三)字符串理解
字符串在内存中是不可改变的。
(一)Object类型:
1.任何类型都可以自动转换成Object类型:任何子类都可以默认转化为父类,而Object类型是所有类的父类
(二)Params(可变参数)
1.如果在传数组参数的时候在数组前加上params,就变成了一个可变参数,可以直接传数组的元素
如static void Test(params int[] arr){ }
2.可变数组作为参数时必须是最后一个参数
a)static void Test(params int[] arr,int age){ }//错误
b)static void Test(int age,params int[] arr){ }//正确
二、namespace(命名空间)
(一)作用
用于解决类的重名问题,可以看做“类的文件夹”
(二)引用命名空间
1.如果代码和被使用的类在一个namespace则不需要using
2.在不同命名空间下的类调用有两种方法
a)写全称 namespace.class
b)先using引用命名空间,再调用(多数情况下使用)
4.命名空间不能用数字开头
5.引用命名空间小技巧:写正确类名,ctrl+.
(三)命名空间包含命名空间
.net的命名空间是逻辑划分的,和物理上的位置没有关系。system是.net的根命名空间
如:namespace TestNameSpace.SubTestNameSpace { }
三、字符串处理
(一)string
1.string类型可以看做是char的只读数组,可以通过下标来访问。
string s="hello,world!";
Console.WriteLine(s[1]);//输出:e
2.C#中字符串有一个重要的特性:不可改变性
3.字符串修改:可以用s.ToCharArr()方法取得字符串的char数组,修改数组后,创建一个新的字符串,将数组赋值给新的字符串,如:
string s="hello,world!"; char[]chars = s.ToCharArr();//用ToCharArr()方法将字符串s中的元素赋值给chars数组 chars[1]="i";改变chars中的第二个元素 s = new string(chars);//实例化一个新的string对象s,并传入数组参数chars Console.WriteLine(s);//输出:hillo,world!
4.用双引号引起来的字符串相当于创建了一个字符串对象
如:
string s="hello,world!";
相当于new了一个字符串对象s
(二)字符串的常用方法
1.ToLower()方法:返回值为string。把字符串转换为小写
2.ToUpper()方法:返回值为string。把字符串转换为大写
3.无论是Tolower()还是ToUpper()方法都无法改变原字符串,而是将字符串的大小写转换后的结果作为一个全新的字符串,通过返回值返回。两者都是非静态方法
4.Equals()方法:比较实例和参数,返回布尔值。其中一个重载是Equals(string a,StringComparation.OrdinalIgnoreCase),其中第二个参数表示忽略大小写
5.字符串的连接“+”:“+”连接两个字符串的时候,如果“+”号两边有一个是字符串类型,那么另一个也会自动转换成字符串类型
6.ToString()方法:返回值为string。任何类型都可以调用ToString()方法转换成字符串
7.Split()方法:返回值为string[]。字符串按照指定的分隔符分割为字符串数组
a)string[] Split(params char[] separator):可传入char数组的元素
b)string[] Split(char[] separator,StringSplitOptions options):第二个参数可选择是否在返回的string数组中保留空白字符串
8.Replace()方法:返回值为string。替换字符串中的字符或字符串
string Replace(string oldValue,string newValue)将字符串中出现oldValue替换为newValue
9.Substring()方法:返回值为string。截取子字符串
a)Substring(int startIndex):取从指定位置startIndex开始一直到最后的子字符串
b)Substring(int startIndex,int length):取从指定位置startIndex开始,指定长度为length的子字符串
10.Contains(string value):返回值为bool。判断字符串中是否含有子字符串value
11.StartWith(string value):返回值为bool。判断字符串是否以value开始
12.EndWith(string value):返回值为bool。判断字符串是否以value结束
13.IndexOf(string value):返回值为Int。字符串中,返回value第一次出现的位置。如果不包含返回-1
(三)字符串理解
字符串在内存中是不可改变的。
string str01="abc"; string str02=str01; str01="def"; Console.WriteLine(str02); //并不是是内存中"abc"字符串被改变为"def",而是变量str01的指向由原先指向"abc"改变为指向"def"
相关文章推荐
- C#学习笔记-字符串处理
- c#学习笔记之命名空间
- 《设计模式:基于C#的工程化实现及扩展》学习笔记 02 准备篇 -- Namespace(命名空间)
- C#学习笔记:命名空间
- .NET/Dot Net学习笔记---.net理解,C#.net的基本类型,字符串转义字符处理..
- C#回顾学习笔记二十四:命名空间
- 学习笔记(二)C#获取当前正在执行的代码的命名空间、类、方法的名称
- C# 学习笔记 -- 第四天 处理字符串
- C++ 学习笔记(3)命名空间using、字符串、string、vector、迭代器、数组
- (原创)c#学习笔记05--变量的更多内容03--字符串的处理
- C#2005 .NET3.0高级编程学习笔记————命名空间
- Visual C# 技术内幕学习笔记 第二章 C#基础(4) 可访问性、命名空间
- c#命名空间的学习笔记
- C#教程第4讲命名空间(学习笔记)
- C++学习笔记:高级编程:文件和流,异常处理,动态内存,命名空间
- C#学习笔记1-命名空间、标识符和关键字
- (原创)c#学习笔记03--变量和表达式04--表达式04--命名空间
- c++primer学习笔记-----3.1命名空间的using 声明
- C#反序列化json字符串时,提示:应为来自命名空间“”的元素“root”。。遇到名称为“”、命名空间为“”的“None”。
- C#学习之路,学习笔记 2.2 字符、字符串、数字的初始化与读取