dart:core Stringの関数について
dart:core Stringの関数について
ここに書いてある関数について適当に日本語化&例を載せてまとめます。
https://api.dartlang.org/1.13.0/dart-core/String-class.html
まとめるほどでもないけど、単純にどんな言語でも文字列操作大事だし、まぁ単純にアウトプットしたいだけです。 あと、Iterableをリストと表記したりかなり雑です。
コンストラクタ
String.fromCharCode(int charCode) factory
数値から文字列を生成する。
main(){
var c = new String.fromCharCode(0x41);
print(c);
// A
}
String.fromCharCodes(Iterable<int> charCodes, [int start = 0, int end]) factory
数値のリストから文字列を生成する。このリストの始まりと終わりを指定することも可能。
main(){
var ns = [0x41, 0x42, 0x43, 0x44];
print(new String.fromCharCodes(ns));
// ABCD
print(new String.fromCharCodes(ns, 1));
// BCD
print(new String.fromCharCodes(ns, 1, 2));
// B
}
String.fromEnvironment(String name, {String defaultValue}) factory
pub build時に--defineで定義した値を取得する。
main(){
// `pub build --define releasemode=true`の場合
print(const String.fromEnvironment('releasemode'));
// true
}
プロパティ
codeUnits -> List<int> read-only
文字列からUTF-16のコードの変更不可なリストを返す。
main(){
var xs = 'hi'.codeUnits;
print(xs);
// [104, 105]
// エラー!
// xs[0] = 0x41;
}
hashCode -> int read-only
文字列のハッシュ値を返す。
main(){
var hash = 'hi'.hashCode;
print(hash);
// 793667904
}
isEmpty -> bool read-only
空文字列ならtrueを返す。
main(){
print('hoge'.isEmpty);
// false
print(''.isEmpty);
// true
print(' '.isEmpty);
// false
}
isNotEmpty -> bool read-only
空文字列でないならtrueを返す。
main(){
print('hoge'.isNotEmpty);
// true
print(''.isNotEmpty);
// false
print(' '.isNotEmpty);
// true
}
length -> int read-only
文字列の長さを返す。
main(){
print('hoge'.length);
// 4
print(''.length);
// 0
}
runes -> Runes read-only
main(){
print('hoge'.runes);
// (104, 111, 103, 101)
for(var c in 'hoge'.runes){
print(c);
}
// 104
// 111
// 103
// 101
}
runtimeType -> Type read-only, inherited
型名を返す。
class A{}
main(){
var a = new A();
print(a.runtimeType);
// A
print('hoge'.runtimeType);
// String
}
オペレータ
operator *(int times) -> String
文字列をtimes回繰り返した文字列を返す。
main(){
print('abc' * 2);
// abcabc
}
operator +(String other) -> String
文字列同士を結合する。
main(){
print('abc' + 'def');
// abcdef
}
operator ==(Object other) -> bool
文字列が同じであるか判定する。
main(){
var a = 'abc';
var b = 'abc';
var c = 'def';
print(a == b);
// true
print(a == c);
// false
print(b == c);
// false
}
operator [](int index) -> String
文字列のindex番目の文字を取得する。(0オリジン)
main(){
var str = 'abc';
print(str[0]);
// a
print(str[2]);
// c
}
メソッド
あとで書く。