深入C# String类

C#中的String类
他是专门处理字符串的(String),他在System的命名空间下,在C#中我们使用的是string

小写的string只是大写的String的一个别名(外号)使用大写和小写都是一样的

常用的字符串处理法
Java中常用的字符串处理方法?

1)  IndexOf:字符串的检索

a)         IndexOf(String s):重头开始检索

b)         IndexOf(String s,startString s):从startString开始检索

2)  获取长度:.length()

3)  判断.equals(参数)

4)  得到字符串的子字符

subString(参数)

subString(参数1,参数2)

C#提供的字符串比较的方法

1)  IndexOf:查找某个字符在字符串当中的位置

2)  subString:从字符串中截取子字符

3)  ToLower():转换成小写

4)  ToUpper():大写

5)  Time():去空格

6)  Equals():比较字符串值

If(name == “”)                    地址

If(name.Equals(String.Empty))值

“”和Empty的区别?

If(name == “”)                              分配一个长度为空的存储空间

If(name.Equals(String.Empty)) 不会分配存储空间

判断空字符串的三种写法?这三个的性能比较?

Name.Length ==0                      2

Name == String.Empty              1

Name == “”                                  3

7)  joi():链接字符串

8)  split():分割

获取邮箱用户名

需求:获取邮箱的用户名

兼用各种格式yes(YES)

循环执行

public void GetUserName()

{

string code;//用户选择

do{

this.PickNameFoemEmail();

Console.WriteLine("是否继续?yes");

code = Console.ReadLine();

code = code.Trim().ToLower();

}while(code.Equals("yes"));

}

public void PickNameFoemEmail()

{

string emsil;// 获取邮箱

string name;//获取用户名

Console.WriteLine("请输入邮箱:");

emsil = Console.ReadLine();

Console.WriteLine("你的邮箱是{0}:",emsil);

// 提取

int posion = emsil.IndexOf("@");

if (posion > 0)

{

name = emsil.Substring(0, posion);

Console.WriteLine("你的邮箱地址是:{0}", name);

}

else

{

Console.WriteLine("你的邮箱格式错误");

}

}

Class1 c = new Class1();

c.GetUserName();

Console.ReadKey();

连接分割字符串
Join     split

// 输入的字符串

string inputString;

// 分割后的字符串数组

string[] splitString;

// 连接后的

string joinString;

Console.WriteLine("请输入字符串,用空分开:");

inputString = Console.ReadLine();

splitString = inputString.Split(' ');

Console.WriteLine(@"\n分割后的:");

foreach (var item in splitString)

{

Console.WriteLine(item);

}

joinString = string.Join("+连接+",splitString);

Console.WriteLine("\n连接后的字符串:{0}",joinString);

@”\n转义符”:忽略掉

Format格式化(不是清除的意思)
String name = “Tom”;

Console.WritrLine(“我的名字:{0},我的年龄{1}”,name,22);

{x}占位符的方式去输出

string name;

string birthday;

int height;

string bloodType;

string planet;

string loveFood;

string record;

Console.WriteLine("欢迎来到“C#”的世界!");

Console.WriteLine("请输入你的个人信息,我将为你建立个人档案:");

Console.Write("姓名:");

name = Console.ReadLine();

Console.Write("出生年月:(*年*月*日):");

birthday = Console.ReadLine();

Console.Write("身高(cm):");

height = int.Parse(Console.ReadLine());

Console.Write("星座:");

planet = Console.ReadLine();

Console.Write("血型:");

bloodType = Console.ReadLine();

Console.Write("喜欢的食物:");

loveFood = Console.ReadLine();

record = string.Format("姓名:{0}\n出生年月:{1}\n身高:{2}\n星座:{3}\n血型:{4}\n喜欢的食物:{5}",name,birthday,height,bloodType,planet,loveFood);

Console.WriteLine("\n这是你的个人档案:");

Console.WriteLine(record);

Console.ReadKey();

Grammar:String myString = string.Format(“格式化字符串”,参数列表)

2 * 3 = 6

String myString = string.Format(“{0}乘以{1}等于{2}”,2,3 ,2 * 3);

如输出货币
语法:

格式字符串包括:固定文本和格式项

格式项

Console.WriteLine("{0}",50);

Console.WriteLine(String.Format("{0,-8:F2}",50));

Console.WriteLine(String.Format("{0,8:C2}", 50));

Format()方法的格式化字符串中各种格式化定义符和示例

1)  C:货币格式

2)  D十进制格式

3)  F小数点后固定位数

4)  用逗号隔开的数字

5)  百分比计数法

6)  十六进制格式

Console.WriteLine("{0}",String.Format("{0:C3}",3000));

Console.WriteLine("{0}",String.Format("{0:D3}",2000));

Console.WriteLine("{0}", String.Format("{0:F3}", 2000));

随机推荐

  1. MFC新建工程中目录包含中文,资源文件打开失败

    ※尽量不适用中文,各种未知错误,嘿嘿 此方法临时解决问题,可以使程序运行,后续是否还有错误是未知数 需要修改3处位置: 1.资源文件中.rc 右键,点击“查看代码”,找到带中文的资源ID,把中文修改掉 ...

  2. spring-framework源码编译及导入

    环境说明: 时间:2017-09-26 OS name: "mac os x", version: "10.12.4", arch: "x86_64& ...

  3. checkpoint防火墙SmartDashboard登录出错

    SmartDashboard登录是报错:fingerprint不匹配 原因:主备机切换导致 解决:选择凌晨不影响业务的时间拔掉原备机的电源线.

  4. Windows学习"Network Analysis in Python"

    原代码仓库的地址为 Network Analysis in Python. 主要按照里面的README.md 进行操作,全部仓库有100MB以上.考虑到数据比较大,再加上我对原笔记文件有修改,建议从我 ...

  5. ping不通公网ip时路由器设置

    可能是路由器里设置了wan口禁ping了 另外,NAT地址转换不要动,默认是开启的 主服务器上防火墙关掉或者设置好访问规则 默认的80端口是不能用的,需要设置一个其它的端口

  6. find用法详解

    一.find的用法 find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [express ...

  7. oralce 的安装以及plsql的配置的html连接

    https://www.cnblogs.com/xkstudy/p/6400738.html

  8. Nginx和PHP-FPM的启动、重启、停止脚本分享

    这篇文章主要介绍了Nginx和PHP-FPM的启动.重启.停止脚本分享,脚本中包含start.stop.reload.restart等常用的管理方法,并可以加入系统服务然后使用servicem命令管理 ...

  9. 【aardio】回车换行符

    回车换行符 在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符.但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字 ...

  10. apache的.htaccess文件作用和相关配置

    首先.htaccess什么? .htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令. 当我们使用apache部署一个网站代码准备部署到网上的时候,我们手中的apache的h ...