1.説明:文字列のJavaクラス、より一般的に使用されるタイプで、文字列型を示し、
データスプライシングの際に大量、高パフォーマンスとのStringBufferのStringBuilderなしでStringクラスのパフォーマンス
2.一般的な文字列の構文は次のとおり:
インポートorg.junit.Test; パブリック クラスStringTest { @Test 公共 ボイドたTestString(){ 文字列S1 = 新しい新しい文字列( "AA" ) のSystem.out.println(S1); // AA ストリングS2 = "AA" ; システム.out.println(S2); // AA // 文字列を取得するインデックス位置 チャー C = "ABCD" .charAt(2 ) のSystem.out.println(C); // C // スプライシング文字文字列 文字列S3 = "ABC" .concat( "123" ); ストリングS4= "ABC" + 123 ; 列S5 = String.Formatの( "%SああシーザーD%"、 "ABC"、123 ); のSystem.out.println(S3); // ABC123 するSystem.out.println(S4 ); // ABC123 するSystem.out.println(S5); // ABC 123ああシーザー // 文字列が指定され含まれているかどうかを判断する ブール B1 = "azxc" .Contains( "X"を); ブール B2 =「azxc ".Contains(" S " ); System.out.printlnは(B1 +" -----「+ B2); // trueにfalseに----- // 文字列の最後かどうか... ブール B3 = "azxc" .endsWith( "XC」 ); System.out.println(B3); // trueに // 文字列が等しいかどうかを決定する ブール B4 = "AZ" .equals( "AZ" ); ブール B5 = "AZ" .equals( "AZ" ) のSystem.out .println(B4 + "----" + B5); // trueにfalseに----- // 文字列が(ケースを無視して)同じであるか否かを判断 するブール B6 = "AC" .equalsIgnoreCase( "AC" )。 System.out.println(B6); // trueに // 文字列の長さの取得 int型の長さ= "ABC" .LENGTH(); System.out.printlnは(長さ);// 3 // 通常の試合 文字列の正規表現= "\\ D +" 。 ブール B7 = "123" .matches(正規表現)。 System.out.println(B7)。// 真 ストリングregex1 = "[-ZA-Z] +" 。 ブール B8 = "aaBFc" .matches(regex1)。 System.out.println(B8)。// 真の 文字列regex2 = "^ *。" ; ブール B = "aabFdx" .matches(regex2)。 System.out.println(B)。// 真の 文字列regex3 = "^ * dは$" ; ブール B9 = "aabFda" 。 のSystem.out.println(B9)。 S =文字列"aabxdsca" .replace( 'A'、 '2' ); のSystem.out.println(S); // 22bxdsc2 // 文字配列へ...に文字列 文字列regex4 =「\\ + D " ; 文字列[] strArr =" aa12bbyb34asd " .split(regex4); のため(文字列S6:strArr){ ;のSystem.out.println(S6) / ** * AA *のbbybの *のASD * / } // へ。 ..始まる ブール B10 = "cmfdsaaa" .startsWith( "CM&LT" ); のSystem.out.println(B10)。// trueに // 文字列の末尾に指定された位置から撮影 文字列S6 = "ABCDEFG"(2 .substring ) のSystem.out.println(S6); // CDEFG // 任命に指定された開始位置から採取した文字列終了位置 文字列S7 = "asdffgeaszx" .substring(2 ,. 6 ) のSystem.out.println(S7); // dffg // 場合列低くする変換 文字列S8 = "ACDdsx" .toLowerCaseを(); // 大文字に文字列を変換する 文字列S9 = "ACDdsx" .toUpperCase(); System.out.printlnは(S8); // acddsx するSystem.out.println(S9); // ACDDSX // ストリングの両端のスペースが除去され、中間スペースは除去されません S10 =文字列"DUD SDA SAD" .trim(); System.out.printlnは(S10); // DUD SDA SAD //は整数文字列型に変換された 文字列= String.valueOf S11(1024 ) のSystem.out。 println(S11); // 1024 } / ** * StringBuilderの文字列連結最速、スレッドセーフな、基礎となる方法が同期化により修飾されているので * / @Test 公共 ボイドtestStringBuilder(){ StringBuilderのSB = 新しい新規のStringBuilder(); sb.append( "AA")アペンド( "VSS")アペンド(13)と.append( "ADSA")アペンド( "dfsfd。" .. ).toString(); 文字列s =sb.toString(); System.out.printlnは(S); // aavss13adsadfsfd } / ** *高速のStringBuffer文字列連結、セキュリティスレッド、基礎となる方法で同期が変更される
*と同期発現スレッドセーフ変性、しかし、スピードはそれほど速くない * / @Test 公共 無効testStringBuffer(){ StringBufferのSB = 新しい新; StringBufferの() sb.append( "AA")のappend( "asdas")アペンド(123 ... ).toString(); 文字列S = sb.toString(); System.out.printlnは(S);//aaasdas123 } }