3.4C#中的String类

字符串是我们在程序中非常常用的一种类型,C#中有一个String类,它位于System命名空间中,属于.net framework类库,我们一直在用的string只不过是String类在C#中的一个别名,在C#中他们是完全一样的。

3.4.1常用的字符串处理方法

1.bool Equals(string value):比较两字符串值是否相等,相等返回true,不等返回false,与“==”作用一样。

2.int Compare(string strA,string strB):比较两个字符串的大小关系,返回一个整数,若strA<strB,返回值小于0,如果strA>strB,返回值大于0,如果strA=strB,返回值为0。

3.int IndexOf(string value):获取指定的value字符串在当前字符串中第一个匹配项的索引,若找到了value,返回索引,没找到返回-1。

4.int LastIndexOf(string value):获取指定的字符串value在当前字符串中最后一个匹配项的索引,若找到了value,返回其索引,如果没找到,返回-1.

5.string Join(string separator,string[] value):把字符串数组value中的每个字符串用指定的分隔符separator连接,返回连接后的字符串。

6.string[] Split(char separator):用指定的分隔符separator分割字符串,返回分割后的字符串组成的数组。

7.string SubString (int startIndex,int length):从指定的位置startIndex开始检索长度为length的子字符串。

8.string ToLower():获得字符串的小写形式。

9.string ToUper():获得字符串的大写形式。

10.string Trim():去掉字符串两端的空格。

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace helloWorld
 8 {
 9    /// <summary>
10    /// 演示使用方法计算税后工资
11    /// </summary>
12    class Program
13    {
14       static void Main(string[] args)
15       {
16          string email;//邮箱地址
17          string choice;//用户的选择
18          string name;//邮箱用户名
19          
20          do//循环程序
21          {
22             Console.WriteLine("please input you email address: ");
23             email=Console.ReadLine();
24             Console.WriteLine("your email address is:{0}",email);
25             //抽取邮箱用户名
26             int position=email.IndexOf("@");//获取@的索引
27             if(position>0)
28             {
29                //@的索引值就是用户名的长度
30                name=email.Substring(0,position);//获取用户名
31                //输出邮箱用户名
32                Console.WriteLine("your email user name is:{0}",name);
33             }
34             else
35             {
36                Console.WriteLine("your email is validate!");
37             }
38             Console.WriteLine("go on?yes/no");
39             choice=Console.ReadLine();
40          }while(choice.Trim().ToLower().Equals("yes"));
41          Console.ReadLine();
42       }
43    }
44 }
View Code
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace helloWorld
 8 {
 9    /// <summary>
10    /// 演示使用方法计算税后工资
11    /// </summary>
12    class Program
13    {
14       static void Main(string[] args)
15       {
16          string inputeString;//输入的字符串
17          string[] splitStrings;//分割后的字符串数组
18          string joinString;//连接后的新字符串
19 
20          //输入提示
21          Console.WriteLine("please input a string using space split: ");
22          inputeString = Console.ReadLine();//接收输入
23          splitStrings = inputeString.Split(' ');
24          //将分割后的字符串输出
25          Console.WriteLine("\nstring after split: ");
26          foreach (string s in splitStrings)
27          {
28             Console.WriteLine(s);
29          }
30          //将分割后的字符串用下划线连接在一起
31          joinString = string.Join("_", splitStrings);
32          //连接后的字符串输出
33          Console.WriteLine("\nstring after join:{0}",joinString);
34          Console.ReadLine();
35       }
36    }
37 }
View Code

Split()方法不是静态的,所以要使用一个具体的字符串对象来调用,参数是想使用的分隔符,注意参数是字符(char)型的。Join()方法是静态的,所以直接使用string类名来调用,参数有两个:第一个是连接字符串用的分隔符,是一个字符串;第二个是要连接的字符串数组。

3.4.2Format方法

我们常用格式字符串和参数列表的形式输出数据,格式字符串中的{x}叫做占位符,其实Format()方法来格式化字符串,Format()方法允许把字符串,数字,或布尔型的变量插入到格式字符串当中,语法:

string str=string.Format("格式字符串",参数列表);

例如:

string str=string,Format("{0} 乘以 {1} 等于 {2} ",2,3,2*3);

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace helloWorld
 8 {
 9    /// <summary>
10    /// 演示使用方法计算税后工资
11    /// </summary>
12    class Program
13    {
14       static void Main(string[] args)
15       {
16          string name;//姓名
17          string birthday;//出生年月
18          int height;//身高
19          string bloodType;//血型
20          string planet;//星座
21          string favourFood;//最喜欢的食物
22          string record; //个人档案
23          //接受输入
24          Output("hello,welcome to the world of c#!\nplease input your infomation to build record for you!\nname:");
25          name = Input();
26          Output("birthday:");
27          birthday = Input();
28          Output("height:");
29          height = int.Parse(Input());
30          Output("bloodtype:");
31          bloodType = Input();
32          Output("planet:");
33          planet = Input();
34          Output("favourFood:");
35          favourFood = Input();
36          record = string.Format("name:{0}\nbirthday:{1}\nheight:{2}\nbloodType:{3}\nplanet:{4}\nfavourFood:{5}",name,birthday,height,bloodType,planet,favourFood);
37          Output("this is your record:\n"+record);
38          Input();
39       }
40 
41       private static void Output(string str)
42       {
43          Console.WriteLine(str);
44       }
45       private static string Input()
46       {
47          return Console.ReadLine();
48       }
49    }
50 }
View Code

 

posted @ 2018-11-05 16:10  LJLLY  阅读(164)  评论(0编辑  收藏  举报