文字列を変更する場合は、StringBuffer クラスと StringBuilder クラスを使用する必要があります。 String クラスとは異なり、StringBuffer クラスと StringBuilder クラスのオブジェクトは、新しい未使用のオブジェクトを生成することなく複数回変更できます。
StringBuffer: StringBuffer クラスを使用すると、新しいオブジェクトを生成するのではなく、毎回 StringBuffer オブジェクト自体が操作されるため、必要に応じて文字列を変更するには StringBuffer を使用することをお勧めします。
StringBuilder: StringBuilder クラスは Java 5 で提案されました。StringBuilder クラスと StringBuffer の最大の違いは、StringBuilder のメソッドがスレッドセーフではない (同期的にアクセスできない) ことです。 StringBuilder は StringBuffer に比べて速度に優れているため、ほとんどの場合 StringBuilder クラスを使用することをお勧めします。
StringBuilder の使用例:public class RunoobTest{ public static void main(String args[]){ StringBuilder sb = new StringBuilder(10); sb.append("Runoob.."); System.out.println(sb); sb.append("!"); System.out.println(sb); sb.insert(8, "Java"); System.out.println(sb); sb.delete(5,8); System.out.println(sb); } } // 实例编译运行结果如下: // Runoob.. // Runoob..! // Runoob..Java! // RunooJava!
#ただし、アプリケーションでスレッド セーフが必要な場合は、StringBuffer クラス を使用する必要があります。 StringBuffer 使用例:
public class Test { public static void main(String args[]) { StringBuffer sBuffer = new StringBuffer("稀土掘金:"); sBuffer.append("www"); sBuffer.append(".juejin"); sBuffer.append(".cn"); System.out.println(sBuffer); } } // 实例编译运行结果如下: // 稀土掘金:www.juejin.cn
StringBuffer メソッド
StringBuffer クラスでサポートされている主なメソッド:メソッドの説明 | |
---|---|
public StringBuffer append(String s)、指定された文字列をこの文字シーケンスに追加します | |
public StringBuffer reverse()、この文字シーケンスを逆の形式に置き換えます | |
public delete( int start , int end)、文字を削除します | |
public insert(int offset, int i)、このシーケンスの部分文字列から int パラメータを変更します 文字列表現of がこのシーケンスに挿入されます | |
insert(int offset, String str)、str パラメータの文字列をこのシーケンスに挿入します | |
replace(int start, int end, String str) は、このシーケンスの部分文字列内の文字を指定された String 内の文字に置き換えます |
メソッドの説明 | |
---|---|
int Capacity()、現在の容量を返します。 | |
char charAt(int Index)、このシーケンスで指定されたインデックスを返します。 | #3 |
## 以上であることを保証します。 | # 4 |
# にコピーします。 ##5 | intindexOf(String str)、文字列 |
6 | int 内で指定された部分文字列が最初に出現するインデックスを返します。 IndexOf( String str, int fromIndex) は、指定されたインデックスから開始して、文字列 |
#7 | int lastIndexOf 内で指定された部分文字列が最初に出現するインデックスを返します。 (String str)、この文字列内で指定された部分文字列が最後に出現したインデックスを返します。 |
8 | int lastIndexOf(String str, int fromIndex)、この文字列内で指定された文字が最後に出現するインデックスを取得し、指定されたインデックスから開始して逆方向検索を実行します。 |
9 | int length( )、長さを返します。 (文字数) |
10 | void setCharAt(int index, char ch), 指定されたインデックスの文字を ch パラメータの値に設定します |
11 | void setLength(int newLength)、文字シーケンスの長さを設定します |
12 | CharSequence subSequence(int start, int end)、このシーケンスのサブシーケンスである新しい文字シーケンスを返します |
13 | String substring(int start )、を返します。この文字シーケンス |
14 | String substring(int start, int end) に現在含まれている文字サブシーケンスを含む new String は、次の文字列を含む新しい String を返します。このシーケンスに現在含まれている文字サブシーケンス |
15 | String toString() は、このシーケンス内のデータの文字列表現を返します |
メソッド インスタンス:\color{red}{メソッド インスタンス:}メソッド インスタンス: |
public synchronized StringBuffer reverse()説明:
この文字シーケンスを逆の形式に置き換えます。
パラメータ: なし戻り値: 文字シーケンスの反転形式。rree
以上がJava で StringBuffer と StringBuilder を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。