Java

String

String 类适用于描述字符串事物。该类是不可以被继承的。我们主要学习:

1字符串特性。字符串最大的特性:一旦被初始化就不可以被改变。重赋值只是改变了引用。

2字符串操作。

1获取:

int  length():获取字符串的长度。

char  charAt( int  index )根据位置获取该位置上某个字符:

根据字符获取该字符在字符串中的位置:

int  indexOf(int ch):返回的是ch在字符串中第一次出现的的位置。

int  indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。

int  indexOf(String str):返回的是str在字符串中第一次出现的的位置。

int  indexOf(String str,int fromIndex):从fromIndex指定位置开始,获取str在字符串中出现的位置。

int  lastIndexOf(xx,xx):里面的参数与上面的4中方法一致。但是是从后面开始查找。       

 

2判断:

boolean  contains(str):字符串中是否包含某一个字符串。

特例indexOf(str):可以索引str第一次出现位置,如果返回-1,表示该str不在字符串中存在。即用该方法就可以判断是否包含某一个字符串。而且可以返回出现的位置。

boolean  isEmpty():字符中是否有内容。

boolean  startsWith(str):字符串是否是以指定内容开头。

boolean  endsWith(str):字符串是否是以指定内容结尾。

boolean  equals(str):判断字符串内容是否相等。复写了Object类中的equals()方法。

boolean  equalsIgnoreCase(str):判断字符串内容是否相同,并忽略大小写。

 

3转换:

将字符数组转换成字符串。

构造函数String(char [])  将字符数组转换成字符串。

         String(char [],offset,count)  将字符数组中的一部分转换成字符串。

静态方法:static copyValueOf(char [] data)

         static copyValueOf(char [] data,int  offset , int count)         

将字符串转换成字符数组。**

    char []  toCharArray();

将字节数组转换成字符串。

构造函数String(byte [])  将字节数组转换成字符串。

         String(byte [],offset,count)  将字节数组中的一部分转换成字符串。

将字符串转换成字符数组。 

    byte []  getBytes();

将基本数据类型转换成字符串。

static String valueOf(基本数据类型)

特殊注意:字符串和字节数组在转换过程中,是可以指定编码表的。

 

4替换:

String replace(oldChar,newChar); 如果要替换的字符不存在,则返回的还是原串。单引号。

String replace(oldCharSequence,newCharSequence); 如果要替换字符串不存在,返回原串。双引号。

5切割:

String [] split(regex); 参数为指定的字符串。

 

6子串:

String substring(begin);  获取字符串中的一部分。从指定的位置开始。

String substring(begin,end);  获取字符串中的一部分。从指定的位置开始,到指定的位置前一位结束。

 

其他:

String toUpperCase():将字符串转换成大写或小写。

String toLowerCase()

String trim():将字符串两端的多个空格去除。

int compareTo(String )对两个字符串进行自然顺序的比较。

 

StringBuffer

StringBuffer是字符串缓冲区。是一个容器。

特点:

1长度是可以变化的。

2可以直接操作多个数据类型。

3最终会通过toString方法变成字符串。

它具备:

1存储

StringBuffer append():将指定数据作为参数添加到已有数据结尾处。

StringBuffer insert(index,数据):将指定数据作为参数添加到指定的index位置。

2删除

StringBuffer delete(start,end):删除缓冲区中的数据,包含start,不包含end

StringBuffer deleteCharAt(index):删除指定位置的字符。

3获取

4修改

StringBuffer replace(start,end,string):将指定的位置范围替换成指定的数据。

void setCharAt(int index,char ch):将指定的位置替换成指定的数据。

5反转

StringBuffer reverse():将容器里的数据反向输出。

 

 

String类复写了Object类中equals()方法,该方法用于判断字符串是否相等

 

String s1 = “abc”;

String s2 = new String(“abc”);

s1s2之间的区别:  

s1是一个类类型变量,”abc”是一个对象.

s1在内存中有一个对象(”abc”),s2在内存中有两个对象(new是一个,”abc”是一个)。

 

StringBuilder

         StringBuilderStringBuffer都是处理字符串的类,他们的用法和方法几乎一致。

         StringBuilder:没有处理线程同步问题。

     StringBuffer:自动处理了线程同步的。

 

升级的三要素:提高效率,简化书写,提高安全性

 

 

7基本数据类型对象包装:(前面是类, 后面是类型)

Boolean  boolean                         Byte     byet                         Char     char

Short    short                               Integer   int               Long     long

Float     float                            Double   double

                          C#

 

1String.IndexOf

String.IndexOf 方法 (Char, Int32, Int32)
报告指定字符在此实例中的第一个匹配项的索引。搜索从指定字符位置开始,并检查指定数量的字符位置。
String.IndexOf(value, startIndex, count)

参数
value:要查找的 Unicode 字符。
startIndex:搜索起始位置。
count:要检查的字符位置数。
返回值(Int32)
如果找到该字符,则为 value 的索引位置;否则如果未找到,则为 -1


示例:
string str = "深圳市盈基实业有限公司国际通邓事文*深圳市盈基实业有限公司国际通邓事文";
Label1.Text = str.IndexOf("中国").ToString();//返回 -1
Label1.Text = str.IndexOf("盈基").ToString();//返回 3
Label1.Text = str.IndexOf("盈基",10).ToString();//返回21 说明:这是从第10个字符开始查起。
Label1.Text = str.IndexOf("",15,10).ToString();//返回 -1
Label1.Text = str.IndexOf("",15,20).ToString();//返回 -32 说明:从第15个字符开始查找,要查找的范围是从第15个字符开始后20个字符,即从第15-35个字符中查找。

2String.LastIndexOf

String.LastIndexOf 方法
报告指定的 Unicode 字符或 String 在此实例中的最后一个匹配项的索引位置。

名称

说明

 

String.LastIndexOf (Char)

报告指定 Unicode 字符在此实例中的最后一个匹配项的索引位置。

 

String.LastIndexOf (String)

报告指定的 String 在此实例内的最后一个匹配项的索引位置。

 

String.LastIndexOf (Char, Int32)

报告指定 Unicode 字符在此实例中的最后一个匹配项的索引位置。该搜索从指定字符位置开始。

 

String.LastIndexOf (String, Int32)

报告指定的 String 在此实例内的最后一个匹配项的索引位置。该搜索从指定字符位置开始。

 

String.LastIndexOf (String, StringComparison)

报告指定字符串在当前 String 对象中最后一个匹配项的索引。一个参数指定要用于指定字符串的搜索类型。

 

String.LastIndexOf (Char, Int32, Int32)

报告指定的 Unicode 字符在此实例内的子字符串中的最后一个匹配项的索引位置。搜索从指定字符位置开始,并检查指定数量的字符位置。

 

String.LastIndexOf (String, Int32, Int32)

报告指定的 String 在此实例内的最后一个匹配项的索引位置。搜索从指定字符位置开始,并检查指定数量的字符位置。

 

String.LastIndexOf (String, Int32, StringComparison)

报告指定字符串在当前 String 对象中最后一个匹配项的索引。参数指定当前字符串中的起始搜索位置,以及要用于指定字符串的搜索类型。

 

String.LastIndexOf (String, Int32, Int32, StringComparison)

报告指定的 String 对象在此实例内的最后一个匹配项的索引位置。参数指定当前字符串中的起始搜索位置、要搜索的当前字符串中的字符数量,以及要用于指定字符串的搜索类型。

 



示例:
string str = "深圳市盈基实业有限公司国际通邓事文*深圳市盈基实业有限公司国际通邓事文";
Label1.Text = str.LastIndexOf("邓文").ToString();//返回-1
Label1.Text = str.LastIndexOf("").ToString();//返回32

Label1.Text = str.LastIndexOf(""8).ToString();//返回-1
Label1.Text = str.LastIndexOf(""20).ToString();//返回14
Label1.Text = str.LastIndexOf(""33).ToString();//返回32
说明:在指定的范围内查找字符,这个范围是上面的输入的参数,理解为,从索引0开始到指定的数值位置范围内查找最后一个匹配的的字符串的位置。示例中,0-8中没有字,所以返回-10-20范围中,有一个字在索引14位置上,0-33范围中有两个字,因为LastIndexOf是返回最后一个匹配项索引位置,所以返32,而不是14

3String.Substring

String.Substring 方法
从此实例检索子字符串。

名称

说明

String.Substring (Int32)

从此实例检索子字符串。子字符串从指定的字符位置开始。

String.Substring (Int32, Int32)

从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。



示例:
string str = "深圳市盈基实业有限公司国际通邓事文*深圳市盈基实业有限公司国际通邓事文";
Label1.Text = str.Substring(11);//返回 国际通邓事文*深圳市盈基实业有限公司国际通邓事文
Label1.Text = str.Substring(11,7);//返回 国际通邓事文*”

 

 

 

String 类提供的成员执行以下操作:比较 String 对象;返回 String 对象内字符或字符串的索引;复制 String 对象的值;分隔字符串或组合字符串;修改字符串的值;将数字、日期和时间或枚举值的格式设置为字符串;对字符串进行规范化。

 

 

Format(String, Object)

将指定的 String 中的格式项替换为指定的 Object 实例的值的文本等效项。

 

Format(String, array<Object>[]()[])

将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。

 

Format(IFormatProvider, String, array<Object>[]()[])

将指定 String 中的格式项替换为指定数组中相应 Object 实例的值的文本等效项。指定的参数提供区域性特定的格式设置信息。

   

Format(String, Object, Object)

将指定的 String 中的格式项替换为两个指定的 Object 实例的值的文本等效项。

   

Format(String, Object, Object, Object)

将指定的 String 中的格式项替换为三个指定的 Object 实例的值的文本等效项。

 

 

数据库

posted on 2015-04-27 13:25  待繁华落幕  阅读(461)  评论(0编辑  收藏  举报