Params

可变参数,只能修饰数组,可以传递数组,也可以传递数组的元素。

要抛弃一个异常,可以这样写:

Throe new exeception??

命名空间

不在同一个命名空间下的类,不同直接访问,要想访问别的命名空间下类有两种方法:

1) 通过using引用命名空间

2) 写全称。命名空间.类名

大多情况下使用第一种

Ctrl+.  直接引用命名空间

System 为根命名空间

字符串

String类常用的方法:

1) string scoreA = "vb#"; string stra =scoreA.ToLower ();

得到字符串小写的形式

2) string scoreA = "vb#"; string stra =scoreA.ToUpper();

得到字符串的大写形式

3) scoreA .Equals (scoreB, StringComparison.CurrentCultureIgnoreCase

判断两个字符串是否相等

String可以看做是char的制度数组,char c[]= str[i];

C#中字符串有个重要的特性,不可变性。字符串一旦声明,就不可以再改变,所以只能通过索引来读取指定位置的char,不能对指定位置的char做修改。

如果要对char进行修改没那么就必须创建一个新的字符串,用str.ToCharArray()方法得到字符串中的char数组,对于数组进行修改后,调用new string (char[])这个构造函数,来创建char数组的字符串,一旦字符串被差姸,那么char数组的修改也不会造成字符串的变化。

比较字符串

1)compare方法

该方法是string类的静态方法,用于比较两个字符串对象。有6种重载方式

Int Compare(string strA,stringB, int indexA,int intdexB,int length, bool ignorCase,system.globalization.CultrueInfocultre)

intdexA,intdexB,子字符串的起始位置

ignorCase 指定考虑大小写

Length,待比较字符串的长度

CultrueInfocultre字符串的区域性信息

返回值

strA>strB 负整数

strA =strB 0

strA<strB 正整数

2)CompareTo()

CompareTo()方法将当前字符串对象与另一个字符串对象比较,其作用与Compare()方法类似,返回值也相同。

CompareTo()方法不是静态方法,可以通过一个string对象来调用,

CompareTo()方法没有重载形式,只能按照大小写敏感方式比较两个整串。

string StrA = "n";

string strB = "m";

int i = StrA.CompareTo(strB );

Console.WriteLine(i);

3)Equals()方法

该方法用于判断亮的字符串是否相同,有两种重载方式。

如果两个字符串相等,则返回True,否则返回False

string strA = "fgd";

string strB = "fgda";

Console.WriteLine(string.Equals (strA ,strB ));

Console.WriteLine(strA .Equals (strB ));

定位字符及子串

定位字串是指一个字符串中寻找其中包含的子串或者某个字符,在string类中,常用的方法有:

1)StartWith/Endwith方法

StartWith方法,可以判断一个字符串对象是否以另一个子字符串开头,如果是返回True;否则返回False,

Public bool StartWith(string value)

string strA = "fgd";

Console.WriteLine(strA .StartsWith ("fg"));

Console.WriteLine(strA.EndsWith ("g"));

2)Indexof/LastIndexof方法

Indexof方法用于搜索在上一个字符串中,某个特定的字符或子串第一次出现的位置,该方法区分大小写, 并从字符串的首字符开始以0计数。如果字符串中不包含这个字符串或子串,则返回-1.

3)IndexOfAny/LastIndexOfAny

它可以在一个字符串中搜索一个字符数组中的任意字符第一次出现的位置。

格式化字符串

Format方法用于创建格式化的字符串及连接多个字符串对象

DateTime DTA = DateTime.Now;

string strB = string.Format("{0:d}",DTA );

Console.WriteLine(strB );

插入和填充字符串

1)insert

用于在一个字符串的指定位置插入另一字符串,从而构造新的字符串。

string strA = "hellio";

Console.WriteLine(strA.Insert (0,"my name "));

属性

2)PadLeft/PadRight

该方法用于在一个字符串的左侧进行字符填充,使其达到一定的长度。

string strA = "hi";

Console.WriteLine(strA .PadLeft (5,'&'));//'&'是字符类型

删除和剪切字符串

1)Remove

从一个字符串的指定位置开始,删除指定数量的字符。索引从0开始

string strA = "hayyy";

string strB = strA.Remove(2,3);

Console.WriteLine(strB );

2)Trim  TrimStart、TrimEnd

用来剪切字符串中特定的字符

Trim()将指定字符串的首尾空白字符移除后形成的字符串

Trim(params char[]trimchars)

数组包含指定要去掉的字符,如果缺省,则为空格字符

返回值为,从指定字符串的开始和结尾移除trimChars中字符的所有匹配项后剩余的string

string strA = "@ jfioashg % jhoshdig  %";

Console.WriteLine(strA .Trim ('@','%'));

TrimStart()从字符串开始位置移除数组中指定的一组字符的所有匹配项。

string strA = "@@33hjkgh**";

Console.WriteLine(strA .TrimStart('@'),'3');

Console.WriteLine(strA.TrimEnd ('*'));

赋值字符串

1)Copy

如果想把一个字符串赋值到另一字符串数组中,可以使用string的静态方法Copy,

Public static string Copy(string str)

返回值,与str具有相同值得新的字符串

string strA = "my";

string strB = string.Copy(strA );

Console.WriteLine(strB );

Console.ReadKey();

2)CopyTo()

可以复制字源符串中的一部分到一个字符数组中,CopyTo()不是静态方法,其语法格式如下:

Public void CopyTo(int sourceIndex,char[]destinnation,int destinationIndex,int count)

sourceIndex 要复制字符串的其实位置

Destinnation 目标字符数组

destinationIndex 指定目标数组开始存放的位置

Count指定要复制的字符个数

string strA = "happy";

char[] strB = new char[100];

strA.CopyTo(0,strB ,0,3);

Console.WriteLine(  strB );

Length 获得字符串的长度

字符串的连接+,两边只要有一个字符串类型,那么另一个也会被自动转换成字符串类型。

一切类型(对象)都可以调用.ToString()方法,转换成字符串类型。

字符串的分割

String[] Split(Params char[] Separator);

将字符串按照指定的分割符分割为字符串数组。

String[] Split(char[] Separator,stringSplitOptions.Options);

将字符串按照指定的char分隔符分别为字符串数组,Options 取RemoveEmptyEntries的时候,将一处结果中的空白字段。

字符串替换

String Replace(string oldValue,string newValue)

string str1= strDataTime.Replace("-","/");

把第一个参数字符,转换为第二个参数字符。

取字符串

String SubString(int startindex);

去从位置startindex开始一直到最后的子字符。

String SubString(int startindex,int length);

取从位置startindex开始长度为length的子字符,如果子字符的长度不足length则报错。

BOOl Contains(string value);

判断字符串中是否含有字串value

Bool StartWith(string Value)

判断字符串是否以字串value开始

BoolEndsWith(string Value)

判断字符串是否以字串value结束

Int indexOf(string value);取字符串value第一次出现的位置。

Int index(string value,int StartIndex);

StringBuilder

StringBuilder类位于System.Text命名空间下,它可表示可变字符串。程序中存储不确定的字符串时,常常需要用StringBuilder类。

C# 基础(5)--字符串的更多相关文章

  1. hrbustoj 1551:基础数据结构——字符串2 病毒II(字符串匹配,BM算法练习)

    基础数据结构——字符串2 病毒IITime Limit: 1000 MS Memory Limit: 10240 KTotal Submit: 284(138 users) Total Accepte ...

  2. redis基础的字符串类型

    redis —— 第二篇 基础的字符串类型 我们都知道redis是采用C语言开发,那么在C语言中表示string都是采用char[]数组的,然后你可能会想,那还不简单,当我执行如下命令,肯定是直 接塞 ...

  3. GoLang基础数据类型--->字符串处理大全

    GoLang基础数据类型--->字符串处理大全 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 欢迎加入:   高级运维工程师之路               59843264 ...

  4. Python基础数据类型-字符串(string)

    Python基础数据类型-字符串(string) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版 ...

  5. C++基础之字符串string

    C++基础之字符串string 标准库类型string表示可变长的字符序列,使用string类型必须首先包含string头文件.作为标准裤的一部分,string定义在命名空间std中. 定义和初始化s ...

  6. Golang的基础数据类型-字符串型

    Golang的基础数据类型-字符串型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.字符型概述 上一篇博客学习了使用单引号括起来的单个字符就是字符类型,在Golang中有两种表 ...

  7. c#编程基础之字符串基础

    1.C#中单个的字符串用单引号包含就是char类型,('a'),单引号中放且只能放一个字符 2.单个字符也可以表示为字符串,还可以有长度为0的字符串. 3.使用s.Length属性来获得字符串中的字符 ...

  8. java基础练习 字符串,控制流,日历,日期等

    1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...

  9. NOI 1.7编程基础之字符串(35题)

    01:统计数字字符个数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 ...

  10. Python基础(二) —— 字符串、列表、字典等常用操作

    一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...

随机推荐

  1. Hihocoder 1035 [树形dp]

    /* 题意: 不要低头,不要放弃,不要气馁,不要慌张. PS:人生第一道自己独立做出来的树形dp... 给一棵树,标号1到n,每条边有两个权值,步行时间和驾车时间.车在1号点. 给m个必须访问的关键点 ...

  2. python sorted和sort

    我们需要对List进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序 方法2.用built-in函数sorted进行排序(从2.4开始) ...

  3. mac下配置openfire

    下载 在浏览器中打开如下网址http://www.igniterealtime.org/downloads/index.jsp,根据你的操作系统选择对应的版本进行下载,这里我是在mac下配置的,所以选 ...

  4. log4j配置不同的类多个日志文件

    <Configuration status="INFO"> <Appenders> <Console name="STDOUT" ...

  5. Sass浅谈

    对于一名前端开发来说,CSS并不陌生,几乎每天都在和CSS打交道.相处久了就会觉得CSS有些许的机械化,有些许的无趣:就会觉得写CSS很多时候都是在做一些复制粘贴性的工作,布局排版,颜色设置,边框属性 ...

  6. UBUNTU 13.04 install Grive

    sudo apt-get install software-properties-common sudo apt-get install python-software-properties sudo ...

  7. (转)这个API很“迷人”——新的Fetch API

    原文:https://hacks.mozilla.org/2015/03/this-api-is-so-fetching 原标题是This API is So Fetching,Fetching也可以 ...

  8. 基于WDF的PCI/PCIe接口卡Windows驱动程序(1)-WDF概述及开发环境搭建

    原文出处:http://www.cnblogs.com/jacklu/p/4619110.html 本科毕业设计是这方面的工作,所以想开几篇博客来介绍使用WDF开发PCI/PCIe接口卡的驱动程序方法 ...

  9. 第23章 排序算法(包括merge等)

      第23章 排序算法  Sorting:1 sort Sort elements in range (function template)2 stable_sort Sort elements pr ...

  10. mysql数据类型最大长度记录

    MySQL中各数据类型的取值范围 转在这里,慢慢记下来. TINYINT -128 - 127 TINYINT UNSIGNED 0 - 255 SMALLINT -32768 - 32767 SMA ...