工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java 文字列

Java 文字列

このチュートリアルでは、例を使用して Java 文字列、その作成方法、および String クラスのさまざまなメソッドについて学習します。

Java では、文字列は一連の文字です。例:「こんにちは」 文字列 'h' を含む文字列です , 'e''l''l' 、および 'o' .

二重引用符を使用します Java で文字列を表現します。たとえば、

// create a string
String type = "Java programming";

ここでは、type という名前の文字列変数を作成しました。 .変数は文字列 Java Programming で初期化されます .


例:Java で文字列を作成する

class Main {
  public static void main(String[] args) {
    
    // create strings
    String first = "Java";
    String second = "Python";
    String third = "JavaScript";

    // print strings
    System.out.println(first);   // print Java
    System.out.println(second);  // print Python
    System.out.println(third);   // print JavaScript
  }
}

上記の例では、first という名前の 3 つの文字列を作成しました。 、 、および3番目 .ここでは、プリミティブ型のような文字列を直接作成しています。

ただし、Java 文字列を作成する別の方法があります (new を使用)。 キーワード)。これについては、このチュートリアルの後半で学習します。

注意 :Java の文字列はプリミティブ型ではありません (int など) 、 char など)。代わりに、すべての文字列は String という名前の定義済みクラスのオブジェクトです .

そして、すべての文字列変数は String のインスタンスです クラス。


Java 文字列操作

Java String には、文字列に対してさまざまな操作を実行するためのさまざまなメソッドが用意されています。一般的に使用される文字列操作のいくつかを見ていきます。

1.文字列の長さを取得

文字列の長さを見つけるには、length() を使用します 文字列のメソッド。たとえば、

class Main {
  public static void main(String[] args) {

    // create a string
    String greet = "Hello! World";
    System.out.println("String: " + greet);

    // get the length of greet
    int length = greet.length();
    System.out.println("Length: " + length);
  }
}

出力

String: Hello! World
Length: 12

上記の例では、 length() メソッドは、文字列の合計文字数を計算して返します。詳細については、Java String length() を参照してください。


2. 2 つの Java 文字列を結合

concat() を使用して、Java で 2 つの文字列を結合できます。 方法。たとえば、

class Main {
  public static void main(String[] args) {

    // create first string
    String first = "Java ";
    System.out.println("First String: " + first);

    // create second
    String second = "Programming";
    System.out.println("Second String: " + second);

    // join two strings
    String joinedString = first.concat(second);
    System.out.println("Joined String: " + joinedString);
  }
}

出力

First String: Java 
Second String: Programming     
Joined String: Java Programming

上記の例では、first という名前の 2 つの文字列を作成しました。 そして .声明に注目してください、

String joinedString = first.concat(second);

ここでは、concat() メソッドはに参加します 最初の文字列 文字列を作成し、それを joinedString に割り当てます

+ を使用して 2 つの文字列を結合することもできます Java の演算子。詳細については、Java String concat() を参照してください。


3. 2 つの文字列を比較

Java では、equals() を使用して 2 つの文字列を比較できます。 方法。たとえば、

class Main {
  public static void main(String[] args) {

    // create 3 strings
    String first = "java programming";
    String second = "java programming";
    String third = "python programming";

    // compare first and second strings
    boolean result1 = first.equals(second);
    System.out.println("Strings first and second are equal: " + result1);

    // compare first and third strings
    boolean result2 = first.equals(third);
    System.out.println("Strings first and third are equal: " + result2);
  }
}

出力

Strings first and second are equal: true
Strings first and third are equal: false

上記の例では、first という名前の 3 つの文字列を作成しました。 、 、および3番目 .ここでは、equal() を使用しています。 ある文字列が別の文字列と等しいかどうかをチェックするメソッド。

equals() メソッドは、文字列を比較しながら内容をチェックします。詳細については、Java String equals() を参照してください。

注意 :== を使用して 2 つの文字列を比較することもできます Java の演算子。ただし、このアプローチは equals() とは異なります。 方法。詳細については、Java String ==vs equals() をご覧ください。


Java 文字列のエスケープ文字

エスケープ文字は、文字列内に存在する一部の文字をエスケープするために使用されます。

文字列内に二重引用符を含める必要があるとします。

// include double quote 
String example = "This is the "String" class";

文字列は二重引用符で表されるため 、コンパイラは "This is the " を扱います 文字列として。したがって、上記のコードではエラーが発生します。

この問題を解決するために、エスケープ文字 \ を使用します Javaで。たとえば、

// use the escape character
String example = "This is the \"String\" class.";

エスケープ文字がコンパイラに 二重引用符 をエスケープするように指示するようになりました テキスト全体を読んでください。


Java 文字列は不変

Java では、文字列は不変です .つまり、一度文字列を作成すると、その文字列を変更することはできません。

より深く理解するために、例を考えてみましょう:

// create a string
String example = "Hello! ";

ここでは、example という名前の文字列変数を作成しました。 .変数は文字列 "Hello! " を保持します .

ここで、文字列を変更したいとします。

// add another string "World"
// to the previous tring example
example = example.concat(" World");

ここでは、concat() を使用しています。 別の文字列 World を追加するメソッド 前の文字列に戻ります。

前の文字列の値を変更できるようです。ただし、これは true ではありません .

ここで何が起こったのか見てみましょう、

<オール>
  • JVM は最初の文字列 "Hello!" を取ります
  • "World" を追加して新しい文字列を作成します 最初の文字列まで
  • 新しい文字列 "Hello! World" を割り当てます へ 変数
  • 最初の文字列 "Hello!" 変わらない

  • new キーワードを使用した文字列の作成

    これまで、Java でプリミティブ型のような文字列を作成してきました。

    Java の文字列はオブジェクトであるため、new を使用して文字列を作成できます。 キーワードも。たとえば、

    // create a string using the new keyword
    String name = new String("Java String");

    上記の例では、文字列 name を作成しました new を使用して キーワード。

    ここで、文字列オブジェクトを作成すると、String() コンストラクタが呼び出されます。コンストラクターの詳細については、Java コンストラクターにアクセスしてください。

    注意 :String クラスは、文字列を作成するための他のさまざまなコンストラクターを提供します。詳細については、Java String (Java の公式ドキュメント) を参照してください。


    例:new キーワードを使用して Java 文字列を作成する

    class Main {
      public static void main(String[] args) {
    
        // create a string using new
        String name = new String("Java String");
    
        System.out.println(name);  // print Java String
      }
    }

    リテラルと新しいキーワードを使用して文字列を作成する

    文字列リテラルと new を使用して文字列を作成する方法がわかったので、 キーワード、それらの主な違いを見てみましょう.

    Java では、JVM が 文字列プール を維持します すべての文字列をメモリ内に格納します。文字列プールは、文字列の再利用に役立ちます。

    1. 文字列リテラルを使用して文字列を作成している間、

    String example = "Java";

    ここでは、文字列 (Java) の値を直接提供しています。 )。したがって、コンパイラは最初に文字列プールをチェックして、文字列が既に存在するかどうかを確認します。

    2. new キーワードを使用して文字列を作成している間、

    String example = new String("Java");

    ここでは、文字列の値は直接提供されません。したがって、新しい "Java" "Java" でも文字列が作成される は既にメモリ プール内に存在します。


    Java 文字列のメソッド

    上記以外にも、Java にはさまざまな文字列メソッドが存在します。これらのメソッドの一部を次に示します:

    メソッド 説明
    contains() 文字列に部分文字列が含まれているかどうかをチェックします
    substring() 文字列の部分文字列を返します
    join() 区切り文字を使用して指定された文字列を結合
    replace() 指定された古い文字を指定された新しい文字に置き換えます
    replaceAll() 正規表現パターンに一致するすべての部分文字列を置き換えます
    replaceFirst() 最初に一致した部分文字列を置換
    charAt() 指定された場所に存在する文字を返します
    getBytes() 文字列をバイト配列に変換します
    indexOf() 文字列内の指定された文字の位置を返します
    compareTo() 2 つの文字列を辞書順に比較します
    compareToIgnoreCase() 大文字と小文字の違いを無視して 2 つの文字列を比較します
    トリム() 先頭と末尾の空白を削除します
    format() フォーマットされた文字列を返します
    split() 文字列を文字列の配列に分割します
    toLowerCase() 文字列を小文字に変換します
    toUpperCase() 文字列を大文字に変換します
    valueOf() 指定された引数の文字列表現を返します
    toCharArray() 文字列を char に変換します 配列
    matches() 文字列が指定された正規表現と一致するかどうかをチェックします
    startsWith() 文字列が指定された文字列で始まるかどうかをチェックします
    endsWith() 文字列が指定された文字列で終わるかどうかをチェックします
    isEmpty() 文字列が空かそうでないかをチェックします
    インターン() 文字列の正規表現を返します
    contentEquals() 文字列が charSequence と等しいかどうかをチェックします
    hashCode() 文字列のハッシュ コードを返します
    subSequence() 文字列からサブシーケンスを返します

    Java

    1. C# 文字列
    2. Java オペレーター
    3. Java インターフェイス
    4. Java列挙型文字列
    5. Java try-with-resources
    6. Java アノテーション
    7. Java String charAt() メソッドと例
    8. 例を使用したJava文字列のendsWith()メソッド
    9. Java 文字列 replace()、replaceAll() および replaceFirst() メソッド
    10. Java 文字列 toLowercase() および toUpperCase() メソッド
    11. Java で Char を String に変換する方法 (例)