文字列内の数値の書式設定
フォーマッターで小数点以下の桁数や余白を調整します。
「文字列内の数値の書式設定」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全4レッスンが含まれています。
数値をフォーマットする
Doubleをそのまま補間すると、小数点以下の桁数が多く表示されることがあります。出力を制御するには、C形式のフォーマット指定子とString(format:)を使います。
let pi = 3.14159265
let text = String(format: "%.2f", pi)
print(text)小数点以下の桁数を制御する
指定子%.2fは、小数点以下2桁の浮動小数点数を意味します。数字を変更すると精度を変更できます。
let value = 2.0 / 3.0
print(String(format: "%.0f", value))
print(String(format: "%.3f", value))整数をフォーマットする
整数には%dを使います。%5dのような幅指定子を使って、余白で埋めることもできます。
let n = 42
print(String(format: "Value: %d", n))
print(String(format: "[%5d]", n))数値をゼロ埋めする
幅の前にゼロを付けると、先頭がゼロで埋められます。固定幅の識別子や時刻に便利です。
let hour = 9
let minute = 5
print(String(format: "%02d:%02d", hour, minute))フォーマットによる丸め
%f指定子は指定された小数点以下の桁数に丸めるため、フォーマットを表示用の丸めとして利用できます。
let amount = 19.996
print(String(format: "%.2f", amount))フォーマットと補間を組み合わせる
まず値をフォーマットし、その結果を通常の補間で埋め込むことで、読みやすい文章を作成できます。
let temp = 21.6789
let shown = String(format: "%.1f", temp)
print("Temperature: \(shown) degrees")パーセンテージと記号
String(format:)でパーセント記号をそのまま出力するには、パーセント記号を2つ記述します。
let rate = 0.075
print(String(format: "%.1f%% rate", rate * 100))FloatingPointFormatStyleの基本
現在のSwiftでは、フォーマット文字列に代わる型安全な方法として、FloatingPointFormatStyleとformatted()を利用できます。
let value = 1234.5678
print(value.formatted(.number.precision(.fractionLength(2))))Format Styleで精度を指定する
.precision(.fractionLength(n))修飾子は、表示する小数部分の桁数を設定します。%.nfと同様の働きです。
let x = 3.14159
print(x.formatted(.number.precision(.fractionLength(0))))
print(x.formatted(.number.precision(.fractionLength(3))))Format Styleで桁区切りを付ける
数値のフォーマットスタイルでは、大きな数値にロケールに応じた桁区切りを追加することもできます。
let big = 1234567.0
print(big.formatted(.number.precision(.fractionLength(0))))フォーマット方法を選ぶ
手早くC形式の制御を行うにはString(format:)を使い、現代的なコードで型安全かつロケール対応の出力を行うにはformatted()を使います。
let price = 9.5
print(String(format: "%.2f", price))
print(price.formatted(.number.precision(.fractionLength(2))))クイックチェック
フォーマット指定子が何を制御するか思い出してください。
復習:文字列内の数値のフォーマット
%.2fや%d、ゼロ埋めの%02dなどのString(format:)指定子で数値の出力を制御する方法と、ロケールに対応した結果を得るために、型安全な最新のformatted(.number.precision(...))スタイルを使う方法を学びました。
let v = 7.0 / 3.0
print(String(format: "%.2f", v))
print(v.formatted(.number.precision(.fractionLength(2))))AI チューターと学ぶ Swift — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 122
- レッスン
- 409
よくある質問
「文字列内の数値の書式設定」レッスンは無料ですか?
はい。「文字列内の数値の書式設定」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全4レッスンが含まれています。
「文字列内の数値の書式設定」で何を学びますか?
フォーマッターで小数点以下の桁数や余白を調整します。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Swift Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「文字列内の数値の書式設定」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このSwift Academyレッスンでコードを書いて実行できますか?
はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 文字列補間の基礎
- 文字列内の数値の書式設定
- 複数行文字列リテラル
- カスタム文字列補間