Dartプログラミング-文字列

文字列データ型は、文字のシーケンスを表します。Dart文字列は、UTF16コードユニットのシーケンスです。

Dartの文字列値は、一重引用符、二重引用符、または三重引用符を使用して表すことができます。単一行の文字列は、一重引用符または二重引用符を使用して表されます。三重引用符は、複数行の文字列を表すために使用されます。

Dartで文字列値を表す構文は次のとおりです。

構文

String  variable_name = 'value'  

OR  

String  variable_name = ''value''  

OR  

String  variable_name = '''line1 
line2'''  

OR  

String  variable_name= ''''''line1 
line2''''''

次の例は、Dartでの文字列データ型の使用を示しています。

void main() { 
   String str1 = 'this is a single line string'; 
   String str2 = "this is a single line string"; 
   String str3 = '''this is a multiline line string'''; 
   String str4 = """this is a multiline line string"""; 
   
   print(str1);
   print(str2); 
   print(str3); 
   print(str4); 
}

それは以下を生成します Output

this is a single line string 
this is a single line string 
this is a multiline line string 
this is a multiline line string

文字列は不変です。ただし、文字列はさまざまな操作を受ける可能性があり、結果の文字列は新しい値として格納できます。

文字列補間

静的文字列に値を追加して新しい文字列を作成するプロセスは、次のように呼ばれます。 concatenation または interpolation。つまり、ある文字列を別の文字列に追加するプロセスです。

演算子プラス(+)は、文字列を連結/補間するために一般的に使用されるメカニズムです。

例1

void main() { 
   String str1 = "hello"; 
   String str2 = "world"; 
   String res = str1+str2; 
   
   print("The concatenated string : ${res}"); 
}

それは以下を生成します output

The concatenated string : Helloworld

例2

「$ {}」を使用して、文字列内のDart式の値を補間できます。次の例は同じことを示しています。

void main() { 
   int n=1+1; 
   
   String str1 = "The sum of 1 and 1 is ${n}"; 
   print(str1); 
   
   String str2 = "The sum of 2 and 2 is ${2+2}"; 
   print(str2); 
}

それは以下を生成します output

The sum of 1 and 1 is 2 
The sum of 2 and 2 is 4

文字列のプロパティ

次の表にリストされているプロパティはすべて読み取り専用です。

シニア番号 プロパティと説明
1 codeUnits

この文字列のUTF-16コードユニットの変更不可能なリストを返します。

2 isEmpty

この文字列が空の場合はtrueを返します。

3 長さ

スペース、タブ、改行文字を含む文字列の長さを返します。

文字列を操作するメソッド

のStringクラス dart: core library文字列を操作するメソッドも提供します。これらの方法のいくつかを以下に示します-

シニア番号 方法と説明
1 toLowerCase()

この文字列のすべての文字を小文字に変換します。

2 toUpperCase()

この文字列のすべての文字を大文字に変換します。

3 トリム()

前後の空白なしで文字列を返します。

4 compareTo()

このオブジェクトを別のオブジェクトと比較します。

5 replaceAll()

指定されたパターンに一致するすべての部分文字列を指定された値に置き換えます。

6 スプリット()

指定された区切り文字に一致する文字列を分割し、部分文字列のリストを返します。

7 substring()

startIndex(包括的)からendIndex(排他的)まで拡張するこの文字列の部分文字列を返します。

8 toString()

このオブジェクトの文字列表現を返します。

9 codeUnitAt()

指定されたインデックスの16ビットUTF-16コードユニットを返します。