.NET中的类库
1、object类
所有类都继承于object类,是顶级父类,他有以下成员,都是虚方法:
a) ToString() 默认输出对象所属类的全名称(命名空间.类名)
b) Equals (Object obj) 比较的是内存地址 实质是:==
c) GetHashCode() 哈希码:用来保证同一时期生成的不同对象的哈希码,重复几率很小
2、string类
string对象可以看作是char类型的只读数组,一旦对字符串进行赋值,那么这个字符串的内容就不能再改变了。
(1)c#中的字符串长度str.lengthjJ就是字符的个数,不必算‘\0’,与c语言中不同。
(2)字符串变量,一旦创建不能修改(一旦创建,不销毁,可以二次利用)

//字符串一旦创建就不能改变
string str2 = "蒋泽明"; 0x01地址先指向蒋泽明
str2 = "杨景涛"; 0x01地址擦除,变成0x02指向杨景涛
//字符串一旦创建过,就不销毁´,可以二次利用
string str2Again = "蒋泽明"; 先在常量池寻找是否有相同的字符串,有则重新指向,没有则创建新的地址存放
这也充分体现了字符串的恒定性
3、string类的常用方法
对字符串的操作一定要用变量接受返回值,因为 字符串 不可修改!!!!!
string str = "我爱北京天安门~~天安门前暴雨升~~";
(1) 字符串长度 : str.Length;
(2)寻找子字符串的下标: int strIndex = str.IndexOf("北京");
获取最后一个字符的位置: int strIndex = str.LastIndexOf("北京");
如果字符串不存在,会返回 -1
(3) 字符串的连接:
string strA = "北京"; string strB = "天蓝";
Console.WriteLine(strA + strB); //输出:北京天蓝
注意:+ 两边只要有一个是字符串类型,另一个也会被自动转换成字符串类型
(4)EndsWith 返回值为bool类型,以某字符结束:Console.WriteLine(str.EndsWith(“~~~”));
同理还有 StartWith 方法
(5)Contains,返回值为bool类型,对象是否出现在字符串中:Console.WriteLine(str.Contains("暴"));
(6)Equals 比较是否相等
SuperMan sman = new SuperMan();
Console.WriteLine(str.Equals(sman));//此时Equals方法,会将sman强制转换成字符串,如果转换失败,则返回false
(7) Substring 从字符串中截取一个子字符串,从指定下标的字符开始到最后
string strAfterSub = str.Substring(2);
Console.WriteLine(strAfterSub);
(8) string Replace(char oldChar, char newChar)
替换;将oldChar替换成为newChar,如果oldChar不存在,返回原串
(9)大小写转换
String ToUpper() String ToLower()
(10)去除两边空格
String Trim()
(11)Spit(char[] separator, stringSplitOptions options)
将字符串按照指点的char分隔符分隔为字符串数组(options取RemoveEntries的时候移除结果中的空白字符串)
(12)字符串转型
将字符数组转成字符串
char[] arrChar = new char[] { '广', '州', '好' };
string strChar = new string(arrChar);
String strCha2r = new String(arrChar);
将字符串转成数组
char[] arrChar2 = strChar.ToCharArray();
.NET中的类库的更多相关文章
- ArcGIS Engine开发之旅02--ArcGIS Engine中的类库
原文:ArcGIS Engine开发之旅02--ArcGIS Engine中的类库 System类库 System类库是ArcGIS体系结构中最底层的类库.System类库包含给构成ArcGIS的其他 ...
- 关于iOS6应用中第三方类库不支持armv7s的问题解决
今天编译ios6+cocos2d v2 .1 beta2制作的游戏,出现下面的错误: ld: file is universal (3 slices) but does not contain a(n ...
- Java中基础类库使用
Java中基础类库: 在这里我仅仅介绍几种我个人觉得会常常使用的 1:Object类中的Clone机制仅仅是对对象进行浅层次的克隆,假设须要进行深层次的克隆的话那么就要自己写(详细Clone方法请參考 ...
- HTML5中Modernizr类库的作用和使用
Modernizr 是一个用来检测浏览器功能支持情况的JavaScript 库.通过这个库我们可以检测不同的浏览器对于HTML5特性的支持情况. 使用Modernizr类库和使用其他第三方类库的方法是 ...
- ArcGIS engine中Display类库——Display
转自原文 ArcGIS engine中Display类库——Display Display类库包括了用于显示GIS数据的对象.除了负责实际输出图像的主要显示对象(display object)外,这 ...
- ArcGIS engine中Display类库 (局部刷新)
转自原文 ArcGIS engine中Display类库 (局部刷新) Display类库包括了用于显示GIS数据的对象.除了负责实际输出图像的主要显示对象(display object)外,这个类库 ...
- 在Android中开源类库使用过程中兼容性等问题的讨论
1.在Android4.0环境下编译的actionbarsherlock.slidingmenu类库,能不能在4.0以下的版本中使用 相信很多人跟我一样,都以为在低版本(如Android2.1或2.3 ...
- 在Visual Studio 2010 中创建类库(dll)
创建类库 选择"文件"->新建->项目->Visual C# ->类库,输入名称,选择位置,单击确定 浏览解决方案资源管理器,可以看到两个C#类,第一个是A ...
- thinkphp中的类库与引用import引入机制
ThinkPHP的类库包括基类库和应用类库 控制器类 模块名+Action 例如 UserAction.InfoAction 模型类 模型名+Model 例如 UserModel.InfoModel ...
- 消除Xcode 5中JosnKit类库的bit masking for introspection of objective-c 警告
Xcode 5中苹果对多个系统框架及相关类库进行了改进.之前建立的项目在Xcode 5中重新编译会产生一些新问题. JosnKit是常用的轻量级Josn解析类,在Xcode 5中: BOOL work ...
随机推荐
- struts2注解redirect传递参数解决方案时,中国的垃圾问题
struts2注解redirect传递参数解决方案时,中国的垃圾问题 试过很多方法 tomcat 编码 .字符串转换 .URLEncoder .. 但是,没有解决方案,然后仔细阅读 stru ...
- 实现关闭ssh继续实施方案---tmux
问题1:为什么ssh一个关闭.不再执行的程序 罪魁祸首:SIGHUP 信号 让我们来看看为什么关掉形式/断开将使程序被执行死. 在Linux/Unix在.有几个概念: 进程组(process grou ...
- 图解IntelliJ IDEA v13应用服务器的运行配置
初步了解IntelliJ IDEA v13应用服务器以后,接下来我们将继续设置应用服务器的运行配置. Artifacts是IDE在通过运行配置时部署的一个服务.Artifacts包括名称.类型.输出目 ...
- 用erlang写的kmp算法
Knuth-Morris-Pratt 字符串查找算法,简称为 "KMP算法",常用于在一个文本串S内查找一个模式串P 的出现位置,这个算法由Donald Knuth.Vaughan ...
- WinXP 无线技巧“区域没有通过无线网络中的发现”一个可能的原因!
貌似WinXP经典或无限.我一直沿用至今,我不知道这一天会放弃. 遇到的问题,也许有XP爱好者都遇到过还得看,写下一点文字注释.----------------------- 切割线 -------- ...
- 【转】 Android用于提示等待的ProgressDialog
原文地址:http://blog.csdn.net/wleing/article/details/6086321 为了安抚用户等待的焦急心情,我们用ProgressDialog.它的用法书上有例子,就 ...
- javascript转换.net DateTime方法 (比如转换\/Date(1426056463000)\/)
function getDate(str_time) { var re = new RegExp('\\/Date\\(([-+])?(\\d+)(?:[+-]\\d{4})?\\)\\/'); va ...
- 一种解决Code Map与ReSharper冲突导致Visual Studio 2013 Peek Definition失效的办法
更正 3月6号: 经再次测试,单独使用Code Map或ReSharper,对Visual Studio的Peek Definition无影响,但是两者一起使用时,Peek Definition失效, ...
- C#函数式程序设计之函数、委托和Lambda表达式
C#函数式程序设计之函数.委托和Lambda表达式 C#函数式程序设计之函数.委托和Lambda表达式 相信很多人都听说过函数式编程,提到函数式程序设计,脑海里涌现出来更多的是Lisp.Haske ...
- 笔试总结篇(一) : 广州X公司笔试
一.单选题: Ps : 当时由于去广州路上颠簸很困,导致刚做几分钟题目就睡了一觉.起来发现20分钟过去了.擦擦! 1. 假设磁盘文件foobar.txt 由 6个ASCII 码字符“foobar” 组 ...