自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳細(xì)介紹JAVA中的字符串

開(kāi)發(fā) 后端
字符串或串(String)是由零個(gè)或多個(gè)字符組成的有限序列。它是編程語(yǔ)言中表示文本的數(shù)據(jù)類型。本文主要介紹JAVA編程語(yǔ)言中的字符串,一起來(lái)看。

Java語(yǔ)言中,把字符串作為對(duì)象來(lái)處理,類String和StringBuffer都可以用來(lái)表示一個(gè)字符串。(類名都是大寫字母打頭)

1.字符串常量

字符串常量是用雙引號(hào)括住的一串字符。 

"Hello World!"

2.String表示字符串常量

用String表示字符串:

  1. String( char chars[ ] );   
  2. String( char chars[ ], int startIndex, int numChars );   
  3. String( byte ascii[ ], int hiByte );   
  4. String( byte ascii[ ], int hiByte, int startIndex, int numChars );  

String使用示例:

  1. String s=new String() ; 生成一個(gè)空串 

下面用不同方法生成字符串"abc":

  1. char chars1[]={''a'',''b'',''c''};   
  2. char chars2[]={''a'',''b'',''c'',''d'',''e''};   
  3. String s1=new String(chars1);   
  4. String s2=new String(chars2,0,3);   
  5. byte ascii1[]={97,98,99};   
  6. byte ascii2[]={97,98,99,100,101};   
  7. String s3=new String(ascii1,0);   
  8. String s4=new String(ascii2,0,0,3);  

3.用StringBuffer表示字符串

  1. StringBuffer( ); /*分配16個(gè)字符的緩沖區(qū)*/   
  2. StringBuffer( int len ); /*分配len個(gè)字符的緩沖區(qū)*/   
  3. StringBuffer( String s ); /*除了按照s的大小分配空間外,再分配16個(gè)字符的緩沖區(qū)*/ 

4、訪問(wèn)字符串

(1)類String中提供了length( )、charAt( )、indexOf( )、lastIndexOf( )、getChars( )、getBytes( )、toCharArray( )等方法。

     

  1. public int length() 此方法返回字符串的字符個(gè)數(shù)     
  2. public char charAt(int index) 此方法返回字符串中index位置上的字符,其中index 值的 范圍是0~length-1     
  3. public int indexOf(int ch)     
  4. public lastIndexOf(in ch)  

返回字符ch在字符串中出現(xiàn)的第一個(gè)和最后一個(gè)的位置

  1. public int indexOf(String str)   
  2. public int lastIndexOf(String str)  

返回子串str中第一個(gè)字符在字符串中出現(xiàn)的第一個(gè)和最后一個(gè)的位置

  1. public int indexOf(int ch,int fromIndex)   
  2. public lastIndexOf(in ch ,int fromIndex)  

返回字符ch在字符串中位置fromIndex以后出現(xiàn)的第一個(gè)和最后一個(gè)的位置

  1. public int indexOf(String str,int fromIndex)   
  2. public int lastIndexOf(String str,int fromIndex)  

返回子串str中的第一個(gè)字符在字符串中位置fromIndex后出現(xiàn)的第一個(gè)和最后一個(gè)的位置。

  1. public void getchars(int srcbegin,int end ,char buf[],int dstbegin)  

srcbegin 為要提取的第一個(gè)字符在源串中的位置, end為要提取的最后一個(gè)字符在源串中的位置,字符數(shù)組buf[]存放目的字符串,dstbegin 為提取的字符串在目的串中的起始位置。

  1. public void getBytes(int srcBegin, int srcEnd,byte[] dst, int dstBegin)  

參數(shù)及用法同上,只是串中的字符均用8位表示。

(2).類StringBuffer提供了 length( )、charAt( )、getChars( )、capacity()等方法。

方法capacity()用來(lái)得到字符串緩沖區(qū)的容量,它與方法length()所返回的值通常是不同的。

5、修改字符串

修改字符串的目的是為了得到新的字符串,類String和類StringBuffer都提供了相應(yīng)的方法。有關(guān)各個(gè)方法的使用,參考java 2 API。

(1)String類提供的方法:

  • concat( )
  • replace( )
  • substring( )
  • toLowerCase( )
  • toUpperCase( )
  1. public String contat(String str);  

用來(lái)將當(dāng)前字符串對(duì)象與給定字符串str連接起來(lái)。

  1. public String replace(char oldChar,char newChar);  

用來(lái)把串中出現(xiàn)的所有特定字符替換成指定字符以生成新串。

  1. public String substring(int beginIndex);   
  2. public String substring(int beginIndex,int endIndex);  

用來(lái)得到字符串中指定范圍內(nèi)的子串。

  1. public String toLowerCase();  

把串中所有的字符變成小寫。

  1. public String toUpperCase();  

把串中所有的字符變成大寫。

(2)StringBuffer類提供的方法:

  • append( )
  • insert( )
  • setCharAt( )

如果操作后的字符超出已分配的緩沖區(qū),則系統(tǒng)會(huì)自動(dòng)為它分配額外的空間。

  1. public synchronized StringBuffer append(String str);  

用來(lái)在已有字符串末尾添加一個(gè)字符串str。

  1. public synchronized StringBuffer insert(int offset, String str);  

用來(lái)在字符串的索引offset位置處插入字符串str。

  1. public synchronized void setCharAt(int index,char ch);  

用來(lái)設(shè)置指定索引index位置的字符值。

注意:String中對(duì)字符串的操作不是對(duì)源操作串對(duì)象本身進(jìn)行的,而是對(duì)新生成的一個(gè)源操作串對(duì)象的拷貝進(jìn)行的,其操作的結(jié)果不影響源串。

相反,StringBuffer中對(duì)字符串的連接操作是對(duì)源串本身進(jìn)行的,操作之后源串的值發(fā)生了變化,變成連接后的串。

6、其它操作

(1)字符串的比較

String中提供的方法:equals( )和equalsIgnoreCase( )

它們與運(yùn)算符''= =''實(shí)現(xiàn)的比較是不同的。運(yùn)算符''= =''比較兩個(gè)對(duì)象是否引用同一個(gè)實(shí)例,而equals( )和equalsIgnoreCase( )則比較兩個(gè)字符串中對(duì)應(yīng)的每個(gè)字符值是否相同。

(2)字符串的轉(zhuǎn)化

java.lang.Object中提供了方法toString( )把對(duì)象轉(zhuǎn)化為字符串。

(3)字符串"+"操作

運(yùn)算符''+''可用來(lái)實(shí)現(xiàn)字符串的連接:

  1. String s = "He is "+age+" years old.";  

其他類型的數(shù)據(jù)與字符串進(jìn)行"+"運(yùn)算時(shí),將自動(dòng)轉(zhuǎn)換成字符串。具體過(guò)程如下:

  1. String s=new StringBuffer("he is").append(age).append("years old").toString(); 

注意:除了對(duì)運(yùn)算符"+"進(jìn)行了重載外,java不支持其它運(yùn)算符的重載。

【編輯推薦】

  1. JAVA語(yǔ)言關(guān)于字符串替換的思考
  2. 原來(lái)是這樣:C#中字符串的內(nèi)存分配與駐留池
  3. 如何使用IPTables實(shí)現(xiàn)字符串模式匹配
  4. JAVA編程 多維數(shù)組基礎(chǔ)
  5. JAVA語(yǔ)言中關(guān)于EJB技術(shù)概論
責(zé)任編輯:于鐵 來(lái)源: 博客園
相關(guān)推薦

2009-02-24 14:27:55

2010-03-09 15:15:02

Python字符串類型

2009-12-24 10:06:30

ADO.NET字符串

2009-11-16 17:59:13

PHP數(shù)組轉(zhuǎn)字符串

2010-03-16 17:41:14

Python字符串

2009-11-27 10:24:25

PHP字符串操作

2022-05-10 09:47:10

Bash字符串Linux

2009-09-02 16:21:20

C#字符串

2009-08-26 13:24:54

C#字符串

2009-08-07 14:34:33

C#模式字符串

2009-11-30 18:26:06

PHP字符串替換

2019-12-17 15:49:44

Java語(yǔ)言字符串

2010-06-28 15:18:51

SQL Server

2021-03-08 08:23:24

Java字符串截取

2021-08-13 07:00:43

Java字符串對(duì)象問(wèn)題

2009-12-01 09:52:40

PHP過(guò)濾字符串

2011-07-11 11:02:12

JAVA集合框架

2009-09-02 15:53:27

C#判斷字符串應(yīng)用

2011-07-11 15:02:54

枚舉

2011-07-21 15:44:33

Java內(nèi)部類
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)