Swift Academy · Ders

Yerel Ayara Duyarlı Biçimlendirme

Sayıları, tarihleri ve para birimlerini yerel ayara göre biçimlendirin.

3. ders / 413 adım

Yerel Ayara Duyarlı Biçimlendirme, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.

Sayılar Evrensel Değildir

Bir milyon iki yüz bin sayısı US'de 1,200,000.50, Almanya'da 1.200.000,50 ve Hindistan'da 12,00,000.50 olarak okunur. Ayraçları veya biçimleri sabit kodlamak dünyanın büyük bölümünde sorun çıkarır. Swift'in FormatStyle API'si bunu her locale için doğru şekilde ele alır.

import Foundation
let value = 1_200_000.5
print(value.formatted()) // uses current locale

formatted() Giriş Noktası

Çoğu standart türün — sayılar, tarihler, ölçümler ve listeler — bir formatted() yöntemi vardır. Hiçbir bağımsız değişken verilmezse locale kurallarını dikkate alan uygun varsayılanları kullanır; özelleştirmek için bir stil geçirin.

import Foundation
let n = 1234.567
print(n.formatted())                      // default
print(n.formatted(.number.precision(.fractionLength(2))))

Sayı Biçimleri

.number temel araçtır. Gruplandırmayı, kesir uzunluğunu, yuvarlamayı ve işaret gösterimini akıcı biçimde yapılandırabilirsiniz. Gerçek ayraç karakterlerini yine locale belirler.

import Foundation
let x = 1234.5
print(x.formatted(
    .number
    .grouping(.automatic)
    .precision(.fractionLength(0...2))))

Para Birimi Biçimlendirme

Para değerleri için .currency(code:), simgeyi, gruplandırmayı ve ondalık basamakları locale için doğru şekilde yerleştirir. Aynı miktar, kullanıcının bölgesine bağlı olarak $1,200.00 veya 1.200,00 €€ biçiminde gösterilir; para birimi dizelerini asla elle oluşturmayın.

import Foundation
let price = 1200.0
print(price.formatted(.currency(code: "USD")))
print(price.formatted(.currency(code: "EUR")))
print(price.formatted(.currency(code: "JPY")))

Yüzde Biçimlendirme

.percent değeri 100 ile çarpar ve locale ait yüzde işaretini ekler; bazı dillerin sayı ile simge arasında gerektirdiği boşluk kurallarını da ele alır.

import Foundation
let ratio = 0.875
print(ratio.formatted(.percent))
print(ratio.formatted(.percent.precision(.fractionLength(1))))

Locale'i Geçersiz Kılma

Varsayılan olarak biçimlendirme Locale.current değerini kullanır. Belirli bir locale'i zorlamak — test amacıyla veya bir değeri sabit bir bölgede göstermek için — herhangi bir stile .locale(_:) zincirini ekleyin.

import Foundation
let value = 1234567.89
let german = Locale(identifier: "de_DE")
print(value.formatted(.number.locale(german)))
// 1.234.567,89

Tarih Biçimlendirme

Tarihlerin kendilerine ait stilleri vardır. .dateTime, istediğiniz alanları (yıl, ay, gün, saat) birleştirmenizi sağlar ve sistem bunları locale'e göre sıralar: US'de ay-gün-yıl, Avrupa'nın büyük bölümünde gün-ay-yıl.

import Foundation
let now = Date()
print(now.formatted(
    .dateTime.year().month().day()))
print(now.formatted(date: .long, time: .shortened))

Göreli Tarihler

RelativeDateTimeFormatter ve .relative stili, tamamen çevrilmiş 2 saat önce veya 3 gün içinde gibi ifadeler üretir. Akışlar ve zaman damgaları için idealdir.

import Foundation
let past = Date().addingTimeInterval(-3600)
let text = past.formatted(
    .relative(presentation: .named))
print(text) // e.g. "1 hour ago"

Ölçümler ve Birimler

Measurement, fiziksel nicelikleri biçimlendirir ve birimleri dönüştürebilir. Kilometre veya mil gösterilip gösterilmeyeceğine locale karar verir; stil, birim adını da yerelleştirir.

import Foundation
let distance = Measurement(value: 5, unit: UnitLength.kilometers)
print(distance.formatted())
print(distance.formatted(
    .measurement(width: .wide)))

Listeler ve Adlar

Ögeleri birleştirmek bile dile uygun şekilde yapılır. .list(type:), İngilizcede apples, oranges, and pears üretirken başka dillerde doğru bağlacı ve ayraçları üretir; virgülleri ve “ve” sözcüğünü elle eklemekten kaçının.

import Foundation
let fruits = ["apples", "oranges", "pears"]
print(fruits.formatted(.list(type: .and)))
print(fruits.formatted(.list(type: .or)))

Geriye Ayrıştırma

FormatStyles tersine çevrilebilir. Bir stilin parseStrategy özelliği (veya stil kullanılarak bir değerin dizeden başlatılması), aynı locale kurallarına uyarak yerelleştirilmiş metni yeniden sayıya veya tarihe dönüştürür.

import Foundation
let style = Decimal.FormatStyle.Currency(code: "USD")
let amount = try? Decimal("$1,234.50", format: style)
print(amount ?? 0)

Hızlı Kontrol

Para değerleri için doğru aracı hatırlayın.

Özet

FormatStyle aracılığıyla locale kurallarını dikkate alan biçimlendirmeyi öğrendiniz:

  • formatted(), locale'e uygun varsayılanları sağlar; özelleştirmek için bir stil geçirin.
  • .number, .currency(code:), .percent, .dateTime, .relative, .measurement ve .list çoğu ihtiyacı karşılar.
  • Bölgeyi geçersiz kılmak için .locale(_:) zincirini ekleyin; stiller metni yeniden ayrıştırabilir.
  • Ayraçları, para birimi simgelerini veya tarih sıralarını asla elle oluşturmayın.
Başlamak ücretsiz

Yapay zeka eğitmeniyle Swift öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
122
Dersler
409

Sıkça Sorulan Sorular

“Yerel Ayara Duyarlı Biçimlendirme” dersi ücretsiz mi?

Evet — “Yerel Ayara Duyarlı Biçimlendirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.

“Yerel Ayara Duyarlı Biçimlendirme” dersinde ne öğreneceğim?

Sayıları, tarihleri ve para birimlerini yerel ayara göre biçimlendirin. Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Swift Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Yerel Ayara Duyarlı Biçimlendirme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Dize Katalogları ve Yerelleştirilmiş Dizeler
  2. Çoğullaştırma ve Stringsdict
  3. Yerel Ayara Duyarlı Biçimlendirme
  4. Sağdan Sola ve Düzen Yönü
← Swift Academy Sayfasına Dön