検索
ホームページJava&#&チュートリアルJavaのStringクラスの詳細な分析

JavaのStringクラスの詳細な分析

Sep 10, 2018 pm 03:24 PM
javastring

文字列はJavaプログラミングで広く使用されており、Javaには文字列を作成および操作するためのStringクラスが用意されています。

文字列を作成する

文字列を作成する最も簡単な方法は次のとおりです:

Stringgreeting = "php中文网";

コード内で文字列定数が見つかった場合、ここでの値は "php中文网" になります。 " "、コンパイラーはこの値を使用して String オブジェクトを作成します。

他のオブジェクトと同様に、キーワードと構築メソッドを使用して String オブジェクトを作成できます。

String クラスには、初期化用のさまざまなパラメーターを提供する 11 の構築メソッドがあります。たとえば、文字列の場合は、文字配列パラメータを指定します。

StringDemo.java ファイル コード:

public class StringDemo{
 public static void main(String args[]){
  char[] helloArray = { 'p', 'h', 'p'}; 
  String helloString = new String(helloArray);
   System.out.println( helloString ); 
   } 
   }

上記のコンパイルと実行結果の例は次のとおりです:

php

注: String クラスは不変なので、一度String オブジェクトの場合、その値は変更できません (詳細については「メモ」セクションを参照してください)。

文字列に多くの変更を加える必要がある場合は、StringBuffer および StringBuilder クラスの使用を選択する必要があります。

文字列の長さ

オブジェクトに関する情報を取得するために使用されるメソッドは、アクセサー メソッドと呼ばれます。

String クラスのアクセサー メソッドは、次のコードの後に​​ある文字列オブジェクトに含まれる文字数を返します。が実行されると、len 変数は 14 に等しくなります:

StringDemo.java ファイル コード:

public class StringDemo {
 public static void main(String args[])
  { 
  String site = "www.php.cn"; 
  int len = site.length(); 
  System.out.println( "php中文网网址长度 : " + len ); 
  } 
}

上記の例のコンパイルと実行結果は次のとおりです:

php中文网网址 : 14

文字列を接続する

String クラスは、2 つの文字列を接続するメソッドを提供します。文字列:

string1.concat(string2);

string2 を string1 に接続する 新しい文字列:

"我的名字是 ".concat("php");

より一般的に使用されるのは、文字列定数に対して concat() メソッドを使用することです。

"Hello," + " php" + "!"

結果は次のとおりです:

"Hello, runoob!"

以下は例です:

StringDemo.java ファイル コード:

public class StringDemo {
 public static void main(String args[])
  {
   String string1 = "php中文网网址:"; 
   System.out.println("1、" + string1 + "www.php.cn"); 
   } 
}

上記の例のコンパイル結果と実行結果は次のとおりです。

1、php中文网网址:www.php.cn

フォーマットされた文字列を作成する

printf() メソッドと format() メソッドを使用して、フォーマットされた数値を出力できることがわかっています。このクラスは、静的メソッド format() を使用して、PrintStream オブジェクトの代わりに String オブジェクトを返します。

String クラスの静的メソッド format() は、1 回限りの印刷出力だけでなく、再利用可能な書式設定された文字列を作成するために使用できます。

以下に示すように、

System.out.printf("浮点型变量的值为 " + "%f, 整型变量的值为 " + " %d, 字符串变量的值为 " + "is %s", floatVar, intVar, stringVar);

次のように記述することもできます

String fs; fs = String.format("浮点型变量的值为 " + "%f, 整型变量的值为 " + " %d, 字符串变量的值为 " + " %s", floatVar, intVar, stringVar)

String メソッド

。 String クラスでサポートされているメソッドは次のとおりです。詳細については、Java String API ドキュメントを参照してください。

SN(シリアル番号) メソッドの説明
1 char charAt(intインデックス)
指定されたインデックスの char 値を返します。
2 int CompareTo(Object o)
この文字列を別のオブジェクトと比較します。
3 int CompareTo(String anotherString)
2 つの文字列を辞書順に比較します。
4 int CompareToIgnoreCase(String str)
大文字と小文字に関係なく、2 つの文字列を辞書編集的に比較します。
5 String concat(String str)
指定された文字列をこの文字列の末尾に連結します。
6 ブール contentEquals(StringBuffer sb)
文字列の文字順序が指定された StringBuffer と同じである場合に限り、true を返します。
7 static String copyValueOf(char[] data)
指定された配列内のこの文字シーケンスを表す String を返します。
8 static String copyValueOf(char[] data, int offset, int count)
指定された配列内のこの文字シーケンスを表す String を返します。
9 ブールendsWith(文字列サフィックス)
この文字列が指定されたサフィックスで終わるかどうかをテストします。
10 ブール値等しい(Object anObject)
この文字列を指定されたオブジェクトと比較します。
11 ブール型equalsIgnoreCase(String anotherString)
大文字と小文字に関係なく、この文字列を別の文字列と比較します。
12 byte[] getBytes()
プラットフォームのデフォルトの文字セットを使用して、この String をバイト シーケンスにエンコードし、結果を新しいバイト配列に格納します。
13 byte[] getBytes(String charsetName)
指定された文字セットを使用してこの String をバイト シーケンスにエンコードし、結果を新しいバイト配列に格納します。
14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
この文字列からターゲットの文字配列に文字をコピーします。
15 int hashCode()
この文字列のハッシュ コードを返します。
16 int IndexOf(int ch)
この文字列内で指定された文字が最初に出現するインデックスを返します。
17 int IndexOf(int ch, int fromIndex)
この文字列内で指定された文字が最初に出現するインデックスを返し、指定されたインデックスから検索を開始します。
18 intindexOf(String str)
この文字列内で指定された部分文字列が最初に出現するインデックスを返します。
19 intindexOf(String str, int fromIndex)
指定されたインデックスから始まる、この文字列内で指定された部分文字列が最初に出現するインデックスを返します。
20 文字列インターン()
文字列オブジェクトの正規表現を返します。
21 int lastIndexOf(int ch)
この文字列内で指定された文字が最後に出現した位置のインデックスを返します。
22 int lastIndexOf(int ch, int fromIndex)
指定されたインデックスから開始して逆方向検索を実行し、この文字列内で指定された文字が最後に出現したインデックスを返します。
23 int lastIndexOf(String str)
この文字列内の指定された部分文字列の右端にあるインデックスを返します。
24 int lastIndexOf(String str, int fromIndex)
この文字列内で指定された部分文字列が最後に出現したインデックスを返し、指定されたインデックスから逆検索を開始します。
25 int length()
この文字列の長さを返します。
26 ブール値一致(文字列正規表現)
この文字列が指定された正規表現と一致するかどうかを示します。
27 booleanregionMatches(booleanignoreCase, int toffset, String other, int ooffset, int len)
2 つの文字列範囲が等しいかどうかをテストします。
28 ブール型regionMatches(int toffset, String other, int ooffset, int len)
2 つの文字列範囲が等しいかどうかをテストします。
29 文字列置換(char oldChar, char newChar)
すべての oldChar を newChar に置き換えることによって取得された新しい文字列を返します。
30 String replaceAll(文字列正規表現、文字列置換)
指定された正規表現に一致するこの文字列のすべての部分文字列を指定された置換で置き換えます。
31 String replaceFirst(文字列正規表現、文字列置換)
指定された正規表現に一致するこの文字列の最初の部分文字列を指定された置換で置き換えます。
32 String[] 分割(文字列正規表現)
指定された正規表現の一致に基づいてこの文字列を分割します。
33 String[] 分割(文字列正規表現、整数制限)
指定された正規表現との一致に基づいてこの文字列を分割します。
34 ブール値startsWith(文字列プレフィックス)
この文字列が指定されたプレフィックスで始まるかどうかをテストします。
35 booleanstartsWith(String prefix, int tooffset)
指定されたインデックスで始まるこの文字列の部分文字列が、指定されたプレフィックスで始まるかどうかをテストします。
36 CharSequence subSequence(int beginIndex, int endIndex)
このシーケンスのサブシーケンスである新しい文字シーケンスを返します。
37 文字列部分文字列(int beginIndex)
この文字列の部分文字列である新しい文字列を返します。
38 文字列部分文字列(int beginIndex, int endIndex)
この文字列の部分文字列である新しい文字列を返します。
39 char[] toCharArray()
この文字列を新しい文字配列に変換します。
40 文字列をLowerCase()に変換
デフォルトのロケールの規則を使用して、この文字列内のすべての文字を小文字に変換します。
41 文字列を小文字に変換(ロケールロケール)
指定されたロケールの規則を使用して、この文字列内のすべての文字を小文字に変換します。
42 String toString()
このオブジェクト自体を返します (すでに文字列になっています!)。
43 文字列をUpperCase()に変換
デフォルトのロケールの規則を使用して、この文字列内のすべての文字を大文字に変換します。
44 文字列を大文字に変換(ロケールロケール)
指定されたロケールの規則を使用して、この文字列内のすべての文字を大文字に変換します。
45 文字列トリム()
先頭と末尾の空白を無視して、文字列のコピーを返します。
46 static String valueOf(プリミティブデータ型 x)

指定されたデータ型の x 引数の文字列表現を返します。

関連する推奨事項:

Java の String、StringBuffer、および StringBuilder クラスのパフォーマンスの詳細な分析

Java の Math および String 形式のクラス インスタンスの詳細な説明

以上がJavaのStringクラスの詳細な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
JVMパフォーマンスと他の言語JVMパフォーマンスと他の言語May 14, 2025 am 12:16 AM

jvm'sperformanceiscompetitivewitherruntimes、sped、safety、andproductivityの提供

Javaプラットフォームの独立性:使用の例Javaプラットフォームの独立性:使用の例May 14, 2025 am 12:14 AM

javaachievesplatformedentenceTheThejavavirtualMachine(JVM)、avainwithcodetorunonanyplatformwithajvm.1)codescompiledintobytecode、notmachine-specificcode.2)

JVMアーキテクチャ:Java Virtual Machineに深く飛び込みますJVMアーキテクチャ:Java Virtual Machineに深く飛び込みますMay 14, 2025 am 12:12 AM

thejvmisanabstractcomputingMachineCrucialForrunningJavaProgramsDuetoitsPlatForm-IndopentInterChitecture.Itincludes:1)ClassLoaderForloadingClasses、2)Runtimedataareaforforforatastorage、3)executionEngineWithinterter、Jitcompiler、およびGarbagecolfecolfecolfececolfecolfer

JVM:JVMはOSに関連していますか?JVM:JVMはOSに関連していますか?May 14, 2025 am 12:11 AM

jvmhasacloserelationshiptheosasittrantesjavabytecodecodecodecodecodecodecodecodecodecodecodecodecodetructions、manageSmemory、およびhandlesgarbagecollection.thisrelationshipallowsjavatorunonvariousosenvirnments、Butalsedentsはspeedifediferentjvmbeviorhiorsandosendisfredediferentjvmbehbehioorysando

Java:一度書く、どこでも実行(wora) - プラットフォームの独立に深く潜るJava:一度書く、どこでも実行(wora) - プラットフォームの独立に深く潜るMay 14, 2025 am 12:05 AM

Javaの実装「Write and、Run Everywherewhere」はBytecodeにコンパイルされ、Java仮想マシン(JVM)で実行されます。 1)Javaコードを書き、それをByteCodeにコンパイルします。 2)JVMがインストールされたプラットフォームでByteCodeが実行されます。 3)Javaネイティブインターフェイス(JNI)を使用して、プラットフォーム固有の機能を処理します。 JVMの一貫性やプラットフォーム固有のライブラリの使用などの課題にもかかわらず、Woraは開発効率と展開の柔軟性を大幅に向上させます。

Javaプラットフォームの独立性:異なるOSとの互換性Javaプラットフォームの独立性:異なるOSとの互換性May 13, 2025 am 12:11 AM

javaachievesplatformentenceTheTheTheJavavirtualMachine(JVM)、CodetorunondifferentoperatingSystemswithOutModification.thejvmcompilesjavacodeplatform-IndopentedbyTecodeを承認することを許可します

Javaをまだ強力にしている機能Javaをまだ強力にしている機能May 13, 2025 am 12:05 AM

javaispowerfulfulduetoitsplatformindepentence、object-orientednature、richstandardlibrary、performancecapability、andstrongsecurityfeatures.1)platformendependenceallowseplicationStorunonaydevicesupportingjava.2)オブジェクト指向のプログラマン型

トップJava機能:開発者向けの包括的なガイドトップJava機能:開発者向けの包括的なガイドMay 13, 2025 am 12:04 AM

上位のJava関数には、次のものが含まれます。1)オブジェクト指向プログラミング、サポートポリ型、コードの柔軟性と保守性の向上。 2)例外処理メカニズム、トライキャッチ式ブロックによるコードの堅牢性の向上。 3)ゴミ収集、メモリ管理の簡素化。 4)ジェネリック、タイプの安全性の向上。 5)コードをより簡潔で表現力豊かにするためのAMBDAの表現と機能的なプログラミング。 6)最適化されたデータ構造とアルゴリズムを提供するリッチ標準ライブラリ。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境