java学習ノート文字列の概要について

2995 ワード

一、String類
Stringクラスは文字列を表し、文字からなるシーケンスです。Stringオブジェクトを作成する方法は簡単で、以下のような種類があります。
1)newで作成:

String s1 = new String("my name is tongye");
2)newなしで直接作成:

String s2 = "my name is tongye";
3)文字配列で文字列を作成できます。

char[] c = {'t','o','n','g','y','e'};

String s3 = new String(c);
Stringオブジェクトは可変ではなく、作成後は変更できません。Stringクラスでは、それぞれがString値を修正するように見える方法であり、実際には修正後の文字列の内容を含む新たなStringオブジェクトが作成されている。次のように:

String s = "tongye";     //          “tongye”  String  ,        s,s   String     

  s = "TONGYE";         //         “TONGYE”   String  ,        s
第二条ステートメントが作成された後、最初のStringオブジェクト「tongye」は消えていません。これはもう二度とアクセスできません。今は引用sが別のオブジェクト「TONGYE」を指しています。
String類は15種類の構造方法と多くの処理文字列の方法がありますが、以下に簡単に紹介します。

String();                  //         String  ,           

String(byte[] bytes);            //                byte  ,      String

String(byte[] bytes,Charset charset);     //      Charset     byte  ,      String

String(byte[] bytes,int offset,int length);  //                byte   ,      String,  offset         ,length       

String(StringBuilder builder);        //          ,                     

String(StringBuffer buffer);         //          ,                     

charAt(int index);    //         char 

s1.compareTo(s2);    //             s1 s2,    int   

s1.equals(s2);       //  s1 s2   ,     ,   true  

s1.contact(s2);      //  s2      s1   

toString();          //        

toUpperCase();      //            

valueOf(boolean b);   //   boolean          

substring(int beginIndex,int endIndex);  //          ,           , beginIndex endIndex  

split(regex);         //                  
二、StringBufferとStrigBuider類
Stringオブジェクトが作成されると、内容が変更されなくなり、Stringクラスはあまり柔軟ではなく、場合によっては不便です。StringBufferとStringBuiderは、Stringクラスの代わりに、他の処理文字列の解決策であり、これらは、Stringクラスよりも柔軟である。一般的には、文字列を使うところであれば、StringBufferやStringBuider類を使うことができます。
1、SteringBuffer
 StringBufferはスレッドセキュリティの可変文字列で、Stringに似た文字列バッファですが、修正できません。StringBufferには、主にappedとinsertの方法である文字列を扱う方法があります。StringBuiderはスレッドが安全です。

append(boolean b);  //                       ,          

insert(int offset,char c);  //  char                     offset     

delete(int start,int end);  //      start end     

deleteCharAt(int index);  //           char
2、SteringBuider
StringBuiderは可変の文字列です。これはStringBufferと互換性のあるAPIを提供していますが、同期は保証されていません。このクラスはStringBufferの簡単な置き換えとして設計されており、文字列バッファ領域で単一スレッドで使用される場合に使用される。ほとんどの場合、シュリングバッファerより速いです。StringBuiderの例を複数のスレッドに使用するのは安全ではない。
以上のこのjavaはノートを勉強します。文字列の概要については、小编が皆さんに提供した内容を全部共有します。参考にしていただければと思います。どうぞよろしくお愿いします。