string类的使用方法详解_C#教程

String:字符串类型

1、构造函数。
String() :构造一个空字符串对象。
String(byte[] bytes) :通过byte数组构造字符串对象。
String(byte[] bytes, int offset, int length) :通过byte数组,从offset开始,总共length长的字节构造字符串对象。
String(char[] value) :通过char数组构造字符串对象。
String(char[] value, int offset, int count) :通过char数组,从offset开始,总共length长的字节构造字符串对象。
String(String original) :构造一个original的副本。既,拷贝一个original。
String(StringBuffer buffer) :通过StringBuffer数组构造字符串对象;

	byte[] b = {'a','b','c','d','e','f','g','h','i','j'};	char[] c = {'0','1','2','3','4','5','6','7','8','9'};

String sb = new String(b);	String sb_sub = new String(b,3,2);	String sc = new String(c);	String sc_sub = new String(c,3,2);	String sb_copy = new String(sb);

System.out.println("sb: " + sb );	System.out.println("sb_sub: " + sb_sub );	System.out.println("sc: " + sc );	System.out.println("sc_sub: " + sc_sub );	System.out.println("sb_copy: " + sb_copy );结果为:sb: abcdefghijsb_sub: desc: 0123456789sc_sub: 34sb_copy: abcdefghij

2、方法。
说明:
1. 所有方法均为public;
2. 书写格式:[修饰符] <返回类型> <方法名([参数列表])>
如:
static int parseInt(String s) 表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

  • 1.

char charAt(int index) :取字符串中的某一个字符,其中的参数index指的是字符串中序数。字符串的序数从0开始到length()-1 。

	String s = new String("abcdefghijklmnopqrstuvwxyz");	System.out.println("s.charAt(5): " + s.charAt(5) );结果为:s.charAt(5): f

  • 2.

int compareTo(String anotherString) :当前String对象与anotherString比较。相等关系返回0;不相等时,从两个字符串第0个字符开始比较,返回第一个不相等的字符差,另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。
3. int compareTo(Object o) :如果o是String对象,和2的功能一样;否则抛出ClassCastException异常。

	String s1 = new String("abcdefghijklmn");	String s2 = new String("abcdefghij");	String s3 = new String("abcdefghijalmn");

System.out.println("s1.compareTo(s2): " + s1.compareTo(s2) );//返回长度差	System.out.println("s1.compareTo(s3): " + s1.compareTo(s3) );//返回'k'-'a'的差结果为:s1.compareTo(s2): 4s1.compareTo(s3): 10

  • 4.

String concat(String str) :将该String对象与str连接在一起。
5. boolean contentEquals(StringBuffer sb) :将该String对象与StringBuffer对象sb进行比较。
6. static String copyValueOf(char[] data) :
7. static String copyValueOf(char[] data, int offset, int count) :这两个方法将char数组转换成String,与其中一个构造函数类似。
8. boolean endsWith(String suffix) :该String对象是否以suffix结尾。

	String s1 = new String("abcdefghij");	String s2 = new String("ghij");	System.out.println("s1.endsWith(s2): " + s1.endsWith(s2) );结果为:s1.endsWith(s2): true

  • 9.

boolean equals(Object anObject) :当anObject不为空并且与当前String对象一样,返回true;否则,返回false。
10. byte[] getBytes() :将该String对象转换成byte数组。
11. void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) :该方法将字符串拷贝到字符数组中。其中,srcBegin为拷贝的起始位置、srcEnd为拷贝的结束位置、字符串数值dst为目标字符数组、dstBegin为目标字符数组的拷贝起始位置。

	char[] s1 = {'I',' ','l','o','v','e',' ','h','e','r','!'};//s1=I love her!	String s2 = new String("you!");	s2.getChars(0,3,s1,7);	//s1=I love you!	System.out.println( s1 );结果为:I love you!

  • 12.

int hashCode() :返回当前字符的哈希表码。
13. int indexOf(int ch) :只找第一个匹配字符位置。
14. int indexOf(int ch, int fromIndex) :从fromIndex开始找第一个匹配字符位置。
15. int indexOf(String str) :只找第一个匹配字符串位置。
16. int indexOf(String str, int fromIndex) :从fromIndex开始找第一个匹配字符串位置。

	String s = new String("write once, run anywhere!");	String ss = new String("run");	System.out.println("s.indexOf('r'): " + s.indexOf('r') );	System.out.println("s.indexOf('r',2): " + s.indexOf('r',2) );	System.out.println("s.indexOf(ss): " + s.indexOf(ss) );结果为:s.indexOf('r'): 1s.indexOf('r',2): 12s.indexOf(ss): 12

  • 17.

int lastIndexOf(int ch)
18. int lastIndexOf(int ch, int fromIndex)
19. int lastIndexOf(String str)
20. int lastIndexOf(String str, int fromIndex) 以上四个方法与13、14、15、16类似,不同的是:找最后一个匹配的内容。
21. int length() :返回当前字符串长度。
22. String replace(char oldChar, char newChar) :将字符号串中第一个oldChar替换成newChar。
23. boolean startsWith(String prefix) :该String对象是否以prefix开始。
24. boolean startsWith(String prefix, int toffset) :该String对象从toffset位置算起,是否以prefix开始。

	String s = new String("write once, run anywhere!");	String ss = new String("write");	String sss = new String("once");	System.out.println("s.startsWith(ss): " + s.startsWith(ss) );	System.out.println("s.startsWith(sss,6): " + s.startsWith(sss,6) );结果为:s.startsWith(ss): trues.startsWith(sss,6): true

  • 25.

String substring(int beginIndex) :取从beginIndex位置开始到结束的子字符串。
26.String substring(int beginIndex, int endIndex) :取从beginIndex位置开始到endIndex位置的子字符串。
27. char[] toCharArray() :将该String对象转换成char数组。
28. String toLowerCase() :将字符串转换成小写。
29. String toUpperCase() :将字符串转换成大写。

	String s = new String("java.lang.Class String");	System.out.println("s.toUpperCase(): " + s.toUpperCase() );	System.out.println("s.toLowerCase(): " + s.toLowerCase() );结果为:s.toUpperCase(): JAVA.LANG.CLASS STRINGs.toLowerCase(): java.lang.class string

  • 30.

static String valueOf(boolean b)
31. static String valueOf(char c)
32. static String valueOf(char[] data)
33. static String valueOf(char[] data, int offset, int count)
34. static String valueOf(double d)
35. static String valueOf(float f)
36. static String valueOf(int i)
37. static String valueOf(long l)
38. static String valueOf(Object obj)
以上方法用于将各种不同类型转换成Java字符型。这些都是类方法。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索string 方法详解 c、stringbuffer使用方法、string使用方法、string数据库使用方法、蝴蝶指标使用方法详解,以便于您获取更多的相关知识。

时间: 2024-09-17 03:37:33

string类的使用方法详解_C#教程的相关文章

C# 为String类型增加方法详解_C#教程

namespace MyExtensionMethods { public static class MyExtensions { public static int MyGetLength(this System.String target) { return target.Length; } } } 使用时,需要引入这个名字空间,引用如下: string str = "dafasdf"; int len = str.MyGetLength(); 以上这篇C# 为String类型增加

C#使用Object类实现栈的方法详解_C#教程

本文实例讲述了C#使用Object类实现栈的方法.分享给大家供大家参考,具体如下: Stack类的代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 使用Object类实现后进先出队列 { class Stack { private Object[] _items; public Object[] Items { get { return this.

asp.net获取系统当前时间的方法详解_C#教程

本文实例讲述了asp.net获取系统当前时间的方法.分享给大家供大家参考,具体如下: 在c# / ASP.net中我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12:11:10)等. //获取日期+时间 DateTime.Now.ToString(); // 2008-9-4 20:02:10 DateTime.Now.ToLocalTime().

C#环形队列的实现方法详解_C#教程

一.环形队列是什么 队列是一种常用的数据结构,这种结构保证了数据是按照"先进先出"的原则进行操作的,即最先进去的元素也是最先出来的元素.环形队列是一种特殊的队列结构,保证了元素也是先进先出的,但与一般队列的区别是,他们是环形的,即队列头部的上个元素是队列尾部,通常是容纳元素数固定的一个闭环. 二.环形队列的优点 1.保证元素是先进先出的         是由队列的性质保证的,在环形队列中通过对队列的顺序访问保证. 2.元素空间可以重复利用        因为一般的环形队列都是一个元素数

C#通过创建Windows服务启动程序的方法详解_C#教程

本文实例讲述了C#通过创建Windows服务启动程序的方法.分享给大家供大家参考,具体如下: 1. 新建一个Windows服务应用程序 创建项目-->Visual C# 左侧的"+"-->Windows -->Windows 服务(右侧模板)-->输入名称,确定创建项目 2. 设置Windows服务的属性(Windows服务里没有窗体,所以点击左侧设计器里空白的地方即可在右侧属性栏里看到属性) 这里属性是控制服务器是否可以停止,暂停,继续等等的操作.根据需要选择

C#.net编程创建Access文件和Excel文件的方法详解_C#教程

本文实例讲述了C#.net编程创建Access文件和Excel文件的方法.分享给大家供大家参考,具体如下: 一些系统可能需求把数据导出到Access或者Excel文件格式,以方便的传递数据.打印等. Excel 文件或者 Access这两种需要导出的文件可能并不是事先就存在的,这就需要我们自己编程生成他们,下面整理一下生成这两个文件的一些方法,只罗列最常用的.并不全. 一.首先生成Excel文件. 方案一.如果用Excel保存的只是二维数据,也就是把他当数据库的来用. 最简单,你不用引用任何额外

C#中委托(Delegates)的使用方法详解_C#教程

1. 委托是什么? 其实,我一直思考如何讲解委托,才能把委托说得更透彻.说实话,每个人都委托都有不同的见解,因为看问题的角度不同.个人认为,可以从以下2点来理解:  (1) 从数据结构来讲,委托是和类一样是一种用户自定义类型.  (2) 从设计模式来讲,委托(类)提供了方法(对象)的抽象. 既然委托是一种类型,那么它存储的是什么数据? 我们知道,委托是方法的抽象,它存储的就是一系列具有相同签名和返回回类型的方法的地址.调用委托的时候,委托包含的所有方法将被执行. 2. 委托类型的定义 委托是类型

C++ 整数拆分方法详解_C 语言

一.问题背景 整数拆分,指把一个整数分解成若干个整数的和 如 3=2+1=1+1+1 共2种拆分 我们认为2+1与1+2为同一种拆分 二.定义 在整数n的拆分中,最大的拆分数为m,我们记它的方案数为 f(n,m) 即 n=x1+x2+······+xk-1+xk ,任意 x≤m 在此我们采用递归递推法 三.递推关系 1.n=1或m=1时 拆分方案仅为 n=1 或 n=1+1+1+······ f(n,m)=1 2.n=m时 S1选取m时,f(n,m)=1,即n=m S2不选取m时,f(n,m)=

C++中可以接受任意多个参数的函数定义方法(详解)_C 语言

能够接受任意多个参数的函数,可以利用重载来实现.这种函数的执行过程类似于递归调用,所以必须要有递归终止条件. #include <iostream> #include <bitset> void print() {} // 递归终止条件.这是必需的. template<typename Type, typename... Types> void print(const Type& arg, const Types&... args) { std::cou