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コードユニットを返します。 |