文字列を逆順に反転する方法を紹介します。
1. split(), reversed を使った方法
以下のように split()
, reversed
, join()
を使って文字列を反転することができます。
void main() {
String str = "Hello World";
String newStr = str.split("").reversed.join();
print(newStr);
}
Output:
dlroW olleH
上記の例でコードの動作を1つずつ見てみると、
split("")
は 1 文字ずつ分離してリストに変換reversed
はリストの格納順序を逆順に変更、Iterable 戻りjoin()
はリストの要素を1つの文字列にまとめて返します
void main() {
String str = "Hello World";
List list = str.split("");
print(list);
var iter = list.reversed;
print(iter);
String newStr = iter.join();
print(newStr);
}
Output:
[H, e, l, l, o, , W, o, r, l, d]
(d, l, r, o, W, , o, l, l, e, H)
dlroW olleH
2. String.fromCharCodes() を使った方法
String.codeUnits
は文字列の文字を UTF-16
の code に変換し、 String.fromCharCodes()
は逆順に変更された、 code のリストを 1 つの文字列にまとめます。
以下のように、文字列の順序を逆順に変更できます。
void main() {
String str = "Hello World";
String newStr = String.fromCharCodes(str.codeUnits.reversed);
print(newStr);
}
Output:
dlroW olleH
3. StringBufferを使った方法
forステートメントを使用して文字列を逆順に巡回しながら、StringBufferに追加して文字列に変換できます。
void main() {
String str = "Hello World";
var sb = StringBuffer();
for (var i = str.length - 1; i >= 0; --i) {
sb.write(str[i]);
}
String newStr = sb.toString();
print(newStr);
}
Output:
dlroW olleH
Related Posts
- Flutter/Dart - 数秒遅らせる、スリープ
- Flutter/Dart - 日付計算、年/月/日の加算と減算
- Flutter/Dart - 日付文字列を DateTime に変換
- Flutter/Dart - 現在時刻を取得する、DateTime
- Flutter/Dart - Mapにkey-valueを追加する
- Flutter/Dart - Map 宣言と初期化
- Flutter/Dart - Map 巡回方法
- Flutter/Dart - MapからEntry(key-value)を削除する
- Flutter/Dart - key, value で Map を並べ替える
- Flutter/Dart - リストのコピー方法
- Flutter/Dart - リストをまとめる方法
- Flutter/Dart - リストの最大値、最小値を見つける
- Flutter/Dart - リスト要素を追加、特定の場所を追加
- Flutter/Dart - リスト要素の削除
- Flutter/Dart - リスト要素の値の変更、検索
- Flutter/Dart - リストの合計、平均計算
- Flutter/Dart - リストの重複排除
- Flutter/Dart - リストのソート (昇順、降順)
- Flutter/Dart - リストの切り取り、分離
- Flutter/Dart - 変数タイプのチェック
- Flutter/Dart - リストのフィルタリング