.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 ...
随机推荐
- WeChatAPI 开源系统架构详解
WeChatAPI 开源系统架构详解 如果使用WeChatAPI,它扮演着什么样的角色? 从图中我们可以看到主要分为3个部分: 1.业务系统 2.WeChatAPI: WeChatWebAPI,主要是 ...
- UI控件库
UI控件库分享:DWZ(j-UI).LigerUI.Linb DWZ(j-UI): 在线演示地址:http://demo.dwzjs.com 在线文档:http://demo.dwzjs.com/do ...
- 转载:每个C++开发者都应该使用的十个C++11特性
这篇文章讨论了一系列所有开发者都应该学习和使用的C++11特性,在新的C++标准中,语言和标准库都加入了很多新属性,这篇文章只会介绍一些皮毛,然而,我相信有一些特征用法应该会成为C++开发者的日常用法 ...
- leetcode第22题--Merge k Sorted Lists
problem:Merge k sorted linked lists and return it as one sorted list. Analyze and describe its compl ...
- leetcode第四题--Add Two Numbers
Problem: You are given two linked lists representing two non-negative numbers. The digits are stored ...
- html5 Canvas画图3:1px线条模糊问题
点击查看原文地址: html5 Canvas画图3:1px线条模糊问题 本文属于<html5 Canvas画图系列教程> 接上一篇canvas画线条教程 上次我们讲到,canvas有时候会 ...
- 基于EF+MVC+Bootstrap的通用后台管理系统及架构
分享基于EF+MVC+Bootstrap的通用后台管理系统及架构 基于EF+MVC+Bootstrap构建通用后台管理系统,集成轻量级的缓存模块.日志模块.上传缩略图模块.通用配置及服务调用, 提供了 ...
- 熔断器C#实现
关键词1:保险丝.电闸跳闸.输入密码错误3次则在指定的时间之内禁止登录 关键词2:保护性架构.防御性代码.软件可靠性 实现:https://github.com/fecktty/Circuit_Bre ...
- 实用的两款jquery树形tree插件
这里有两款非常实用的jquery tree控件: (1) ------------------------------------------1.(根据一讲师总结) ---zTree: jquery. ...
- Toast,AlertDialog的误解
在一般的软件开发中,子线程中是不能更改UI主线程中创建的UI控件的.之前的理解是Toast也不能在子线程中创建.事实上并不是这样子的. @Override protected void onCreat ...