Kotlinの文字列を逆順にするreversedの使い方を徹底解説!初心者でもわかる文字列操作入門
生徒
「Kotlinで文字列を逆さまにする方法ってありますか?」
先生
「はい、Kotlinではreversed()という便利なメソッドを使うことで、簡単に文字列を逆順にできますよ。」
生徒
「どうやって使えばいいんですか?プログラミング初心者なので、なるべくわかりやすく教えてください!」
先生
「もちろんです。それでは、Kotlinのreversed()メソッドの基本から丁寧に見ていきましょう。」
1. reversed()メソッドとは?
Kotlin(ことりん)のreversed()メソッドは、文字列(もじれつ)を後ろから前へと逆に並べ替えるための機能です。
例えば「Hello」という文字列をreversed()を使って逆順にすると、「olleH」となります。
このreversed()という言葉は、英語で「逆にする」という意味で、名前の通り文字をひっくり返してくれる便利な命令(めいれい)です。
2. まずは基本の使い方を覚えよう
それでは、実際にKotlinでreversed()を使ってみましょう。以下はとてもシンプルな例です。
fun main() {
val original = "Hello"
val reversed = original.reversed()
println(reversed)
}
このプログラムでは、まずoriginalという変数に文字列「Hello」を入れています。
そのあとでoriginal.reversed()を使って、文字列を逆にしてreversedという変数に代入(だいにゅう)しています。
printlnで結果を画面に表示すると、「olleH」と出力されます。
olleH
3. reversed()の中身はどうなってるの?
reversed()メソッドは、文字列を1文字ずつ後ろから順番に読み取って、それを新しい文字列として組み立て直します。
たとえば、「Kotlin」という文字列があった場合、順番は次のようになります:
- 1文字目:
K - 2文字目:
o - 3文字目:
t - 4文字目:
l - 5文字目:
i - 6文字目:
n
この順番を逆にすると「niltok」になります。
4. 数字や記号が入っていても大丈夫?
reversed()メソッドは、英語のアルファベットだけでなく、数字(すうじ)や記号(きごう)もちゃんと扱えます。
例えば、次のような文字列があった場合でも問題ありません。
fun main() {
val original = "123-ABC"
val reversed = original.reversed()
println(reversed)
}
CBA-321
このように、文字列の中にあるすべての文字がそのまま逆順に並び替えられます。
5. reversed()は破壊的操作ではないってどういうこと?
少し難しそうな言葉が出てきましたが、安心してください。「破壊的操作(はかいてきそうさ)」とは、もとのデータを直接書き換えることを意味します。
でも、Kotlinのreversed()メソッドは、「もとの文字列を壊さずに、新しく逆順の文字列を作る」しくみです。
つまり、もとの文字列はそのまま残るので、安心して使うことができます。
6. どんな場面で使えるの?
例えば、クイズアプリで「文字を逆にして表示したいとき」や、「パスワードの確認で逆からチェックする」などのシーンで使えます。
他にも、「文字列を逆から読んでも同じになるか」を調べる、いわゆる「回文(かいぶん)」のチェックにも役立ちます。
fun main() {
val word = "level"
val isPalindrome = word == word.reversed()
println(isPalindrome)
}
true
この例では、「level」という文字列が、逆順にしても同じかどうかを比較しています。
結果がtrueなので、「これは回文ですよ」という意味になります。
7. 空の文字列(空文字)にも対応してる?
空の文字列、つまり何も文字が入っていない状態でも、reversed()はちゃんと動作します。
fun main() {
val empty = ""
val reversed = empty.reversed()
println("[" + reversed + "]")
}
[]
結果としては何も表示されませんが、エラーにはならないので安心してください。
8. 日本語や全角文字でも大丈夫?
Kotlinのreversed()は、英語だけでなく日本語(にほんご)や全角(ぜんかく)の文字もきちんと扱えます。
fun main() {
val message = "こんにちは"
val reversed = message.reversed()
println(reversed)
}
はちにんこ
このように、Kotlinでは日本語も文字単位で正しく逆順に並び替えてくれます。