C# 中 String 类型的详细讲解
C# 字符串(String)
在 C# 中,您可以使用字符数组来表示字符串,但更常见的做法是使用 string 关键字来声明一个字符串变量。string 关键字是 System.String 类的别名。
1.String 类的属性
String 类有以下两个属性:
Chars
在当前 String 对象中获取 Char 对象的指定位置。
| 序号 | 属性 |
| 1 | Chars 在当前 String 对象中获取 Char 对象的指定位置。 |
| 2 | Length 在当前的 String 对象中获取字符数。 |
2.String 类的方法
String 类有许多方法用于 string 对象的操作。下面提供了一些最常用的方法:
一、字符串常用的静态方法:
1、Compare 字符串的比较(按照字典顺序)
int result= string.Compare(string str1,string str2);
当str1 > str2时,返回1
当str1 = str2时,返回0
当str1 < str2时,返回-1
string.Compare(string str1,string str2,bool ignoreCase) //忽略大小写比较
2、Concat连接方法参数很多,常用的Concat(string str1,string str2);
string str=string.Concat("w","e"); //str="we";
3、Format参数化处理,相当于Console.WriteLine();
string str=String.Format("今天{0}很热","天气");//str="今天天气很热";
4、IsNullOrEmpty判断字符是否为null或者为空,返回值为bool;
string str1="hahha";
bool b1=string.IsNullOrEmpty(str);//b1=false;
string str2="";
bool b2=string.IsNullOrEmpty(str2);//b2=true;
string str3=null;
bool b3=string.IsNullOrEmpty(str3);//b3=true;
5、Join字符串的合并
string.Join(string str,string[] strArr);//将数组strArr中的内容拼接成一个新的字符串,并在对应数组的每两项间添加分隔符str
string strs=string.Join(",",string[]{"w","e","r","t"});//strs="w,e,r,t";
二、字符串常用的实例方法:
1、Contains 判断字符串中是否包含某个字符,返回bool值。
string str="我爱编程";
bool b=str.Contains("程");//b=true;
2、EndsWith和StartsWith 判断是否是已某种字符串开始或者结束
string str="我好喜欢你";
bool b1=str.StartsWith("好");//b1=false;
bool b2-str.EndsWith("你");//b2=true;
3、Equals 比较两个字符串是否相等
string str1="asd";
string str2="ert";
bool b = str1.Equals(str2); //b=false;
bool <strName>.Equals(string str, StringComparison.OrdinalIgnoreCase) //表示不区分大小写
4、IndexOf 和 LastIndexOf 判断字符串第一次出现(IndexOf)和最后一次出现(LastIndexOf )的位置,如果没有出现过则返回值为-1
string str ="今天的雨很大,天很冷";
int i=str.IndexOf("很"); //i=4;
int i=str.LastIndexOf("很");//j=8;
int m=str.IndexOf("小");//m=-1;
5、Replace 字符串(字符也是可以的)替换,返回新的字符串
string str="好困呀";
string s=str.Replace("困","精神");//s="好精神呀";
6、Insert 插入
在字符串的index位置上插入字符,原来的字符依次后移,变成一个新的字符串
string str="夜深了";
string s=str.Insert(1,"已经");// s="夜已经深了"
7、Remove删除字符串(字符)
在字符串中移除从startIndex开始,长度为length的字符串,剩下的字符合为一个新的字符串(<strName> = <strName>.Remove(startIndex,length);)
string str="夜已经深了";
string s=str.Remove(1,2);//s="夜深了";
8、Split 将字符串<strName>以sep数组中的字符分割,分割后得到的内容存到一个数组中(string[] <strName>.Split(params char[] sep);)
string str="我,真的、好困;呀";
string[] s=str.Split(new char(){',','、',';'});//s=string[]{"我","真的","好困","呀"};
9、Substring 截取字符<str>以index开始截取,并截取lenth个字符(string <str>.Substring(index,lenth))
string str="还在下雨";
string s=str.Substring(2,2);//s="下雨";
10、ToCharArray将字符串转化为字符数组(<string>.ToCharArray())
string str="雨已经小了";
char[] s=str.ToCharArray();//s=char[]{'雨',"已","经","小","了"};
11、Trim() 出去两边的空格
string str=" aa ";
string s=str.Trim();//s="aa";
12、ToUpper(转换为大写)和ToLower(转换为小写)
string s="RaSer";
string s1=s.ToUpper();//s1="RASER";
string s2=s.ToLower();//s2="raser";
C# 中 String 类型的详细讲解的更多相关文章
- Java中String类型细节
Java中String类型细节 一 . String两种初始化方式 1 . String str1= “abc”;//String类特有的创建字符对象的方式,更高效 在字符串缓冲区中检测”abc”是否 ...
- Java中String类型详解
这篇博客是我一直想总结的,这两天一直比较忙,先上传下照片吧,过后有时间再弄成正常的. 本文主要是对Java中String类型的总结,包括其在JVM中是怎么存储的...
- UWP中String类型如何转换为Windows.UI.Color
原文:UWP中String类型如何转换为Windows.UI.Color 我在学习过程中遇到的,我保存主题色为string,但在我想让StatusBar随着主题色变化时发现没法使用. ThemeCol ...
- Redis 中 String 类型的内存开销比较大
使用 String 类型内存开销大 1.简单动态字符串 2.RedisObject 3.全局哈希表 使用 Hash 来存储 总结 参考 使用 String 类型内存开销大 如果我们有大量的数据需要来保 ...
- C#中string类型是值类型还是引用类型?
.Net框架程序设计(修订版)中有这样一段描述:String类型直接继承自Object,这使得它成为一个引用类型,也就是说线程上的堆栈上不会驻留有任何字符串. string类型(引用类型) 名称 CT ...
- 【转载】 Java中String类型的两种创建方式
本文转载自 https://www.cnblogs.com/fguozhu/articles/2661055.html Java中String是一个特殊的包装类数据有两种创建形式: String s ...
- C#中string类型是值类型还是引用类型?(转)
出处:https://www.cnblogs.com/dxxzst/p/8488567.html .Net框架程序设计(修订版)中有这样一段描述:String类型直接继承自Object,这使得它成为一 ...
- Hibernate中所有包作用详细讲解
http://liyanblog.cn/articles/2012/09/17/1347848802900.html Hibernate一共包括了23个jar包,令人眼花缭乱.本文将详细讲解Hiber ...
- 关于JAVA中String类型的最大长度
前些天看到一道面试题,题目很容易理解:String的长度限制是多少? 针对这个题目,浏览了网友的回答,大概得到了3个层次的答案. 最浅的层次: 近似计算机内存大小的长度.这是作为一个程序员最浅显的回答 ...
随机推荐
- 给iOS开发新手送点福利,简述UITextField的属性和用法
UITextField属性 0. enablesReturnKeyAutomatically 默认为No,如果设置为Yes,文本框中没有输入任何字符的话,右下角的返回按钮是disabled的. ...
- Spring boot with Apache Hive
5.29.1. Maven <dependency> <groupId>org.springframework.boot</groupId> <artif ...
- PG自动化测试
安装软件包 yum groupinstall "Development Tools" yum install zlib-devel tcl-devel readline-devel ...
- springboot 2.0 自定义redis自动装配
首先创建maven项目 pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xm ...
- Python Web框架——Flask
简介 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理 ...
- 学习 TCP 三次握手和四次挥手
TCP三次握手和四次挥手的问题在面试中是最为常见的考点之一.很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答. 本篇尝试使用动画来对这个知识点进行讲解,期望读者们可以更加简单地 ...
- FP变更物料编码(增加尾缀)
FP物料编码增加尾缀的程序,标准物料编码是18位,目前程序中增加尾缀的有三种1.DUMMY 2.SP开头 3.P开头 4.C开头 5.BP对应处理程序如下:1.DUMMY SAP_MATE ...
- 配置ssh免密登录后,仍需要密码才能登陆其中某台机器
提示:如果是三台机器A.B.C配置了ssh免密登录,从A和B上登录C需要密码,则需要修改C的配置 修改配置文件如下: sudo vi /etc/ssh/sshd_config #禁用root账户登录, ...
- unity5-GI是什么?
GI是什么? GI =直接光照+间接光照+环境光+反射光.直接光照先不用说了,间接光照是光线在物体上反射所带来的光照. 核心参数: 每个光源上的Bounce Intensity.环境光可以直接理解为你 ...
- 利用WKWebView实现js与OC交互注意事项
最近在写一些关于wkwebview的一些代码,发现了几点心得,记录一下. 1.js调用OC 我是利用wkwebview进行的开发实现,主要代码有三部分 1.向config注入OC对象 [config. ...