S1/C#语言和数据库技术基础/04-深入C#的String类

常用字符串处理方法


方法


说明


Bool Equals(string value)


比较一个字符串与另一个字符串value的值是否相等。若二者相等,则返回true;若不相等,则返回false


Int Compare(string strA,string strB)


比较两个字符串的大小关系,返回一个整数。若strA小于strB,则返回值小于0;若strA等于strB,则返回值为0;若strA大于strB,则返回值大于0


Int IndexOf(char ,string value)


获取指定的value字符串在当前字符串中第一个匹配项的位置。如果找到了value,就返回它的位置;如果没有找到,就返回-1


Int LastIndexOf(string value)


获取指定的字符串value在当前字符串中最后一个匹配项的位置。如果找到了value,就返回它的位置;如果没哟找到,就返回-1


String join(string separator,string[] value)


把字符串数组value中的每个字符串用指定的分隔符separator连接,返回连接后的字符串


String[] split(char separator)


用指定的分隔符separator分割字符串,返回分割后的字符串数组


String Substring(int startIndex,int length)


从指定的位置startIndex开始检索长度为length的字符串


String ToLower()


获得字符串的小写形式


String ToUpper()


获得字符串的大写形式


String trim()


去掉字符串前后两端多余的空格

提示:

1、运算“==”和Equals()方法:

运算符“==”和Equals()方法应用于两个字符串,所判断的内容是有差别的。简单地讲,“==”判断的是两个字符串对象在内存中的首地址,即判断是否是同一个字符串对象,而Equals()方法判断的是两个字符串对象的值是否相等。

2、“”和String.Empty:

“”:为String对象分配一个长度为零的存储空间。

String.Empty:表示空字符串,不会为对象分配存储空间。

在C#中,大多数情况下“”和String.Empty可以互换使用,一般建议使用后者。

连接分割字符串

注意:Join()方法是String类的静态方法,要以String类名来调用,这点与Split()方法不同。

资料:

在输出语句中出现了“\n”符号。这是一种特殊的字符常量,它的特点如下。

1、以反斜线“\”开头,后紧跟一个或几个字符。

2、具有特定的含义,不同于字符原有的意义,所以称为“转义字符”。

3、主要用来表示那些用一般字符不便于表示的控制代码,用可以看见的字符表示不可看见的字符。如:“\n”表示一个换行符,“\t”表示一个水平制表符。

C#设置路径的正确代码是“C:\\temp”,其中“\\”就是转义符,表示反斜杠。为了避免程序员因为缺少一个“\”符,导致程序执行中因路径找不到产生错误,C#提供了@字符以忽略转义符。例如,使用@字符可以简化设置路径的代码为@"C:\temp"。

Format格式化

string name="王强";

Console.WriteLine("我的名字是{0},我的年龄是{1}。",name,18);

这段代码中,Console.WriteLine()方法的参数“我的名字是{0},我的年龄是{1}。”叫作格式字符串,格式字符串后面的部分“name,18”是参数列表,格式字符串中的{x}叫作占位符。

Format()方法允许把字符串、数字或布尔型的变量插入到格式字符串中,它的语法和WriteLine()方法很相似。

语法:

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

其中,格式字符串中包含固定文本和格式项。格式项的形式如下所示。

{索引 [ , 对齐 ] [ :格式字符串 ] }

其中,索引从0开始,与变量列表对应;对齐部分设置显示的宽度和对齐的方式,是一个带符号的整数,整数的大小表示数据的宽度,正数为右对齐,负数为左对齐;格式字符串部分包含格式说明符。

例如:

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

格式化数值结果表


字符


说明


示例


输出结果


C


货币格式


String.Format("{0:C3}",2000)


¥2 000.000


D


十进制格式


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


2000


F


小数点后的位数固定


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


2000.000


N


用逗号(,)隔开的数字


String.Format("{0:N}",250000)


250,000


P


百分比计数法


String.Format("{0:P3}",0.29768)


29.768


X


十六进制格式


String.Format("{0:X000}",12)


C

例如:

String.Format("{0,-8:F2}",23);

显示结果为“23.00”,即以左对齐、宽度为8、保留2位小数的方式输出数值23。

String.Format("{0,8:C2}",23);

显示结果为“¥23.00”,即以右对齐、宽度为8、显示货币符号、保留2位小数的方式输出数值23。

类型转换

1、隐式类型转换

对于任何数值类型A,只要其取值范围完全包含在类型B的取值范围内,就可以隐式转换为类型B。也就是说,int类型可以隐式转换为float型或double型,float型可以隐式转换为double型。

2、显示类型转换

把取值范围大的类型转换为取值范围小的类型。

数值类型与字符串之间的转换

1、字符串转换为数值型

当要把字符串转换为数值类型时,可以调用不同的数值类型的Parse()方法(Parse的中文意思是解析)。

例如,将字符串转换为整型的代码:

int.Parse(string);

将字符串转换为单精度浮点型的代码:

float.Parse(string);

将字符串转换为双精度浮点型的代码:

double.Parse(string);

注意,要转换的字符串必须是数字的有效表示形式,也就是表面上看起来是对应的数字。

2、数值型转换为字符串

字符串可以转换为数值,那么怎样将数值类型的数据转换为字符串呢,同java一样C#只要调用ToString()方法就可以。例如:

int age = 18;

String myage=age.ToString();WW

使用Convert类进行转换

Parse()方法是将字符串类型转换为数值型的,其实C#中还有一个更全能的类——Convert类,它可以在各种基本类型之间执行数据类型的互相转换。

常用Convert类的类型转换方法


方法


说明


Convert.ToInt32()


转换为整型(int型)


Convert.ToSingle()


转换为单精度浮点型(float型)


Convert.ToDouble()


转换为双精度浮点型(double型)


Convert.ToString()


转换为字符串类型(string型)

从结果可以看到:转换成int型时,进行了四舍五入的计算,这个和显示类型转换是不同的,前面我们使用显示类型转换将58.5转换为int型的结果是58,直接将小数点后的值舍弃掉了。

总结:各种转换的方法使用范围

隐式类型转换:常用于数值型之间,将取值范围小的数值类型转换为取值范围大的数值类型。

显示类型转换:常用于数值型之间,将取值范围大的数值类型转换为取值范围小的数值类型,用法是(XXX)变量或对象。

Parse()方法:将字符串转换为其他类型,永发围xxx.Parse(string).

Convert类:任何基本类型之间的互相转换。

需要注意的是,使用Parse()方法和Convert类进行转换的时候,如果转换没有意义则可能会出错。

时间: 2024-10-25 17:11:49

S1/C#语言和数据库技术基础/04-深入C#的String类的相关文章

S1/C#语言和数据库技术基础/15-使用ADO.NET查询和操作数据

String和StringBuilder 在使用String类时常常存在这样一个问题:当每次为同一个字符串重新赋值时,都会在内存中创建一个新的字符串对象,需要为该新对象分配新的空间,这样会加大系统的开销.因为system.String类是一个不可变的数据类型,一旦对一个字符串对象进行初始化后,该字符串对象的值就不能改变了.当对该字符串的值做修改时,实际上是又创建了一个新的字符串对象.现在我们来分析由以下三个语句组成的这段代码的输出结果是什么. String   strText   =   "He

S1/C#语言和数据库技术基础/08-用SQL语句操作数据

SQL语言主要由以下几部分组成: DML(Data Manipulation Language,数据操作语言,也称为数据操纵语言):用来插入.修改和删除数据库中的数据,如INSERT.UPDATE及DELETE等. DDL(Data Definition Language,数据定义语言):用来建立数据库.数据库对象和定义其列,大部分是以CREATE开头的命令,如CREATE TABLE,CREATE VIEW及DROP TABLE等. DQL(Data Query Language,数据查询语言

S1/C#语言和数据库技术基础/07-用表组织数据

SQL Server提供了以下四种类型的约束 1.实体完整性约束 实体完整性要求表中的每一行数据都反映不同的实体,不能存在相同的数据行. 通过索引.唯一约束.主键约束或标识列属性,可以实现表的实体完整性.这些方法的实现将在后面说明. 2.域完整性约束 域完整性指的是给定列输入的有效性. 通过限制数据类型.检查约束.输入格式.外键约束.默认值.非空约束等多种方法,可以实现表的域完整性. 3.引用完整性约束 在输入或删除数据行时,引用完整性约束用来保持表之间已定义的关系. 例如,在管理学生信息的时候

S1/C#语言和数据库技术基础/09-数据查询基础

查询的机制: 查询是针对表中已经存在的数据行而言的,可以简单地理解为“筛选”,将符合条件的数据抽取出来. 数据表在接受查询请求的时候,可以简单的理解为“他将逐行判断”,判断是否符合查询条件,如果符合查询条件就提取出来,然后把所有选中的行组织在一起,形成另外一个类似于表的结构,构成查询的结果,通常叫做结果集(RecordSet). 由于结果集的结果实际上和表的结构类似,都是由行组成的,因此在记录集上依然可以进行再次查询. 使用SELECT语句进行查询 查询使用SELECT语句,最简单的查询语句的格

S1/C#语言和数据库技术基础/11-连接查询和分组查询

分组查询 采用分组查询的T-SQL语句如下. SELECT   CourseID,AVG(Score)   AS   课程平均成绩 FROM   Score GROUP   BY   CourseID (1)查询男女学生的人数各是多少 SELECT   COUNT(*)    AS   人数,SSex    FROM   Students GROUP   BY   SSex (2)查询每个年级的总人数 SELECT   COUNT(*)   AS   年级人数,SGrade   FROM   S

S1/C#语言和数据库技术基础/01-第一个C#程序

执行C#应用程序时,可以使用.NET Framework提供的以下快捷键. F5:启动. Ctrl+F5:开始执行不调试. Ctrl+Atl+L:显示解决方案资源管理器,或者点开菜单栏选择“工具”→“选项”选项对话框,在左边选择“项目和解决方案”选项,在右边勾选“总是显示解决方案”复选框即可. 认识C#程序 namespace关键字,namespace(命名空间)是C#中组织代码的方式,它的作用类似java中的package(包),这样我们就可以把紧密相关的一些代码放在同一个命名空间中,大大提高

S1/C#语言和数据库技术基础/03-使用属性升级MyBank

访问修饰符 在应用程序中,访问修饰符可以用来修饰类成员字段和方法,以此限定类成员的可访问级别.如果将类的成员(变量或者方法)声明为public,就表示这些类成员可以被其他类访问.如果使用private限制类成员的访问权限,那么这些类成员就只能在该类里面使用,其他类对他们没有访问权限. 如果将某个字段或者方法声明为public,就表示其他类可以访问这个字段或方法:如果声明为private,那么该字段或方法就只能在本类中使用,其他类不能访问. 访问修饰符 访问权限 访问级别 Public 不受任何限

S1/C#语言和数据库技术基础/06-程序数据集散地:数据库

实体和记录 实体,所有客观存在的.可以被描述的事务. 记录,数据库中存储的数据表格,每一“行”(Row)实际上对应一个实体,在数据库中通常叫作一条“记录”(Record). 表格中的每一个“列”,如编号.姓名.年龄.民族等,在数据库中,通常称之为“字段”. 数据库管理系统(DataBase Management System,DBMS)是一种系统软件,由一个互相关联的数据集合和一组访问数据的程序构成.这个数据集合通常称为数据库,其中包含了有用的数据信息.数据库管理系统的基本目标是要提供一个可以方

S1/C#语言和数据库技术基础/14-使用ADO.NET访问数据库

ADO.NET提供了两个组件,用来访问和处理数据:.NET Framework数据提供程序和DataSet(数据集) .NET Framework数据提供程序是专门为数据处理及快速地只进.只读访问数据而设计的组件.使用它可以连接数据源.执行命令和检索结果,直接对数据源进行操作. DataSet是专门为独立于任何数据源的数据访问而设计的.使用它,可以不必直接和数据源打交道,大批量的操作数据,也可以将数据绑定在控件上. .NET Framework数据提供程序 .NET Framework数据提供程