.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 ...
随机推荐
- 在Eclipse发展Webapp部署过程,缓存的位置
介绍: 在Eclipse进行Web发展,通常直接在项目Eclipse集成Tomcat发展.那Webapp部署在那里?是否在高速缓冲存储器的位置,可以切换? 1. 查看当前的Webapp项目缓存位置 ...
- ASP.NET MVC创建的网站
ASP.NET MVC创建的网站 最近在写一个网站,昨天刚写完,由于要和朋友一起测试,但是他电脑上没有环境,所以希望我在自己电脑上部署一下,让他直接通过浏览器来访问来测试,所以从昨晚到今天上午,通 ...
- WEB安全实战(五)XSS 攻击的第二种解决方式(推荐)
序 说到 XSS 攻击,前边已经有两篇文章在讲这个事了,这次又拿出来说,主要是针对近期工作中的一些新的问题.那么之前是怎么解决问题的呢?为什么又要换解决方式?以下就具体的跟大家分享一下. 旧方案 公司 ...
- c语言内存对齐(1)
在<C陷阱与缺陷>有这样一个例子: #include <stdio.h> int main(void) { int i; char c; ;i<;i++){ scanf( ...
- IIS7.5下的httpModules设置
部署到IIS7.5上httpModule不起作用了,原来是iis7里面的网站应用程序池使用了默认的“集成模式”,所以所有的http请求处理都托管给了 IIS,web.config里面的配置就不起效了. ...
- IOS UI 第十篇: UITABLEVIEW
uitableView review yesterday’s knowledge : folding group : ------------------------------- ...
- Vijos: P1046观光旅游
背景 湖南师大附中成为百年名校之后,每年要接待大批的游客前来参观.学校认为大力发展旅游业,可以带来一笔可观的收入. 描述 学校里面有N个景点.两个景点之间可能直接有道路相连,用Dist[I,J]表示它 ...
- iOS基础 - iOS程序启动原理
一.UIApplicationMain 在main.m的main函数中执行了UIApplicationMain这个方法,这是ios程序的入口点 int UIApplicationMain(int ar ...
- 【C#】聊聊不需要记密码的密码管理补充帖 —— 具体实现
开篇第一句话,就是“小白继续,有实际经验的兄弟们可以洗洗睡了”,因为这个 Lite 版是个实验性的实现,也由于水平原因源码不忍直视,所以如果你坚持看完了,请留下宝贵意见. 以下,干货: 基本模式: 程 ...
- 正则表达式与领域特定语言(DSL)
如何设计一门语言(十)——正则表达式与领域特定语言(DSL) 几个月前就一直有博友关心DSL的问题,于是我想一想,我在gac.codeplex.com里面也创建了一些DSL,于是今天就来说一说这个事情 ...