ChoiceFormat Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
A ChoiceFormat memungkinkan Anda melampirkan format ke rentang angka.
[Android.Runtime.Register("java/text/ChoiceFormat", DoNotGenerateAcw=true)]
public class ChoiceFormat : Java.Text.NumberFormat
[<Android.Runtime.Register("java/text/ChoiceFormat", DoNotGenerateAcw=true)>]
type ChoiceFormat = class
inherit NumberFormat
- Warisan
- Atribut
Keterangan
A ChoiceFormat memungkinkan Anda melampirkan format ke rentang angka. Ini umumnya digunakan dalam MessageFormat untuk menangani jamak. Pilihan ditentukan dengan daftar ganda naik, di mana setiap item menentukan interval setengah terbuka hingga item berikutnya: <blockquote>
X matches j if and only if limit[j] ≤ X < limit[j+1]
</blockquote> Jika tidak ada kecocokan, maka indeks pertama atau terakhir digunakan, tergantung pada apakah angka (X) terlalu rendah atau terlalu tinggi. Jika array batas tidak dalam urutan naik, hasil pemformatan akan salah. ChoiceFormat juga menerima \u221E setara dengan infinity(INF).
<Strong>Note:</strong>ChoiceFormat berbeda dari kelas lain Format di mana Anda membuat ChoiceFormat objek dengan konstruktor (bukan dengan getInstance metode pabrik gaya). Metode pabrik tidak diperlukan karena ChoiceFormat tidak memerlukan penyiapan kompleks untuk lokal tertentu. Bahkan, ChoiceFormat tidak menerapkan perilaku spesifik lokal apa pun.
Saat membuat ChoiceFormat, Anda harus menentukan array format dan array batas. Panjang array ini harus sama. Misalnya, <ul><li><em>limits</em> = {1,2,3,4,5,6,7}<br><em>formats</em> = {"Sun","Mon","Tue","Wed","Thur","Fri","Sat"}<li><em>limits</em> = {0, 1, ChoiceFormat.nextDouble(1)}<br><em>format</em> = {"no files", "one file", "many files"}<br> (nextDouble dapat digunakan untuk mendapatkan double lebih tinggi berikutnya, untuk membuat interval setengah terbuka.) </ul>
Berikut adalah contoh sederhana yang memperlihatkan pemformatan dan penguraian: <blockquote>
{@code
double[] limits = {1,2,3,4,5,6,7};
String[] dayOfWeekNames = {"Sun","Mon","Tue","Wed","Thur","Fri","Sat"};
ChoiceFormat form = new ChoiceFormat(limits, dayOfWeekNames);
ParsePosition status = new ParsePosition(0);
for (double i = 0.0; i <= 8.0; ++i) {
status.setIndex(0);
System.out.println(i + " -> " + form.format(i) + " -> "
+ form.parse(form.format(i),status));
}
}
</blockquote> Berikut adalah contoh yang lebih kompleks, dengan format pola: <blockquote>
{@code
double[] filelimits = {0,1,2};
String[] filepart = {"are no files","is one file","are {2} files"};
ChoiceFormat fileform = new ChoiceFormat(filelimits, filepart);
Format[] testFormats = {fileform, null, NumberFormat.getInstance()};
MessageFormat pattform = new MessageFormat("There {0} on {1}");
pattform.setFormats(testFormats);
Object[] testArgs = {null, "ADisk", null};
for (int i = 0; i < 4; ++i) {
testArgs[0] = new Integer(i);
testArgs[2] = testArgs[0];
System.out.println(pattform.format(testArgs));
}
}
</blockquote>
Menentukan pola untuk objek ChoiceFormat cukup mudah. Misalnya: <blockquote>
{@code
ChoiceFormat fmt = new ChoiceFormat(
"-1#is negative| 0#is zero or fraction | 1#is one |1.0<is 1+ |2#is two |2<is more than 2.");
System.out.println("Formatter Pattern : " + fmt.toPattern());
System.out.println("Format with -INF : " + fmt.format(Double.NEGATIVE_INFINITY));
System.out.println("Format with -1.0 : " + fmt.format(-1.0));
System.out.println("Format with 0 : " + fmt.format(0));
System.out.println("Format with 0.9 : " + fmt.format(0.9));
System.out.println("Format with 1.0 : " + fmt.format(1));
System.out.println("Format with 1.5 : " + fmt.format(1.5));
System.out.println("Format with 2 : " + fmt.format(2));
System.out.println("Format with 2.1 : " + fmt.format(2.1));
System.out.println("Format with NaN : " + fmt.format(Double.NaN));
System.out.println("Format with +INF : " + fmt.format(Double.POSITIVE_INFINITY));
}
</blockquote> Dan hasil outputnya akan seperti berikut: <blockquote>
{@code
Format with -INF : is negative
Format with -1.0 : is negative
Format with 0 : is zero or fraction
Format with 0.9 : is zero or fraction
Format with 1.0 : is one
Format with 1.5 : is 1+
Format with 2 : is two
Format with 2.1 : is more than 2.
Format with NaN : is negative
Format with +INF : is more than 2.
}
</blockquote>
<h2>"synchronization">Synchronization</h2>
Format pilihan tidak disinkronkan. Disarankan untuk membuat instans format terpisah untuk setiap utas. Jika beberapa utas mengakses format secara bersamaan, utas tersebut harus disinkronkan secara eksternal.
Ditambahkan dalam 1.1.
Java dokumentasi untuk java.text.ChoiceFormat.
Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.
Konstruktor
| Nama | Deskripsi |
|---|---|
| ChoiceFormat(Double[], String[]) |
Membangun dengan batas dan format yang sesuai. |
| ChoiceFormat(IntPtr, JniHandleOwnership) |
Konstruktor yang digunakan saat membuat representasi terkelola objek JNI; dipanggil oleh runtime. |
| ChoiceFormat(String) |
Membangun dengan batas dan format yang sesuai berdasarkan pola. |
Bidang
| Nama | Deskripsi |
|---|---|
| FractionField |
Konstanta bidang yang digunakan untuk membuat objek FieldPosition. (Diperoleh dari NumberFormat) |
| IntegerField |
Konstanta bidang yang digunakan untuk membuat objek FieldPosition. (Diperoleh dari NumberFormat) |
Properti
| Nama | Deskripsi |
|---|---|
| Class |
Mengembalikan kelas runtime dari . |
| Currency |
Mendapatkan mata uang yang digunakan oleh format angka ini saat memformat nilai mata uang. -or- Mengatur mata uang yang digunakan oleh format angka ini saat memformat nilai mata uang. (Diperoleh dari NumberFormat) |
| GroupingUsed |
Mengembalikan true jika pengelompokan digunakan dalam format ini. -atau- Atur apakah pengelompokan akan digunakan dalam format ini atau tidak. (Diperoleh dari NumberFormat) |
| Handle |
Handel ke instans Android yang mendasar. (Diperoleh dari Object) |
| JniIdentityHashCode |
Mendapatkan kode hash identitas yang ditetapkan ke Java peer ini oleh runtime interop. (Diperoleh dari Object) |
| JniManagedPeerState |
A |
| JniPeerMembers |
A |
| MaximumFractionDigits |
Mengembalikan jumlah maksimum digit yang diizinkan dalam bagian pecahan angka. -or- Mengatur jumlah maksimum digit yang diizinkan dalam bagian pecahan angka. (Diperoleh dari NumberFormat) |
| MaximumIntegerDigits |
Mengembalikan jumlah maksimum digit yang diizinkan dalam bagian bilangan bulat dari angka. -or- Mengatur jumlah maksimum digit yang diizinkan dalam bagian bilangan bulat angka. (Diperoleh dari NumberFormat) |
| MinimumFractionDigits |
Mengembalikan jumlah minimum digit yang diizinkan dalam bagian pecahan angka. -or- Mengatur jumlah minimum digit yang diizinkan dalam bagian pecahan angka. (Diperoleh dari NumberFormat) |
| MinimumIntegerDigits |
Mengembalikan jumlah minimum digit yang diizinkan dalam bagian bilangan bulat dari angka. -or- Mengatur jumlah minimum digit yang diizinkan dalam bagian bilangan bulat dari angka. (Diperoleh dari NumberFormat) |
| ParseIntegerOnly |
Mengembalikan true jika format ini hanya akan mengurai angka sebagai bilangan bulat. -atau- Mengatur apakah angka harus diuraikan sebagai bilangan bulat saja atau tidak. (Diperoleh dari NumberFormat) |
| PeerReference |
Mendapatkan referensi objek JNI untuk peer Java ini. (Diperoleh dari Object) |
| RoundingMode |
Mendapatkan yang |
| ThresholdClass |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
| ThresholdType |
API ini mendukung infrastruktur Mono untuk Android dan tidak dimaksudkan untuk digunakan langsung dari kode Anda. |
Metode
| Nama | Deskripsi |
|---|---|
| ApplyPattern(String) |
Mengatur pola. |
| Clone() |
Membuat dan mengembalikan salinan objek ini. (Diperoleh dari _Format) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
A |
| Dispose() |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| Dispose(Boolean) |
Merilis sumber daya yang dipegang oleh rekan Java ini. (Diperoleh dari Object) |
| DisposeUnlessReferenced() |
A |
| Equals(Object) |
A |
| Equals(Object) |
Menunjukkan apakah beberapa objek lain "sama dengan" yang satu ini. (Diperoleh dari Object) |
| Format(Double, StringBuffer, FieldPosition) |
Mengembalikan pola dengan format ganda. |
| Format(Double) |
Spesialisasi format. (Diperoleh dari NumberFormat) |
| Format(Int64, StringBuffer, FieldPosition) |
Spesialisasi format. |
| Format(Int64) |
Spesialisasi format. (Diperoleh dari NumberFormat) |
| Format(Object, StringBuffer, FieldPosition) |
Memformat angka dan menambahkan teks yang dihasilkan ke buffer string yang diberikan. (Diperoleh dari NumberFormat) |
| Format(Object) |
Memformat objek untuk menghasilkan string. (Diperoleh dari _Format) |
| FormatToCharacterIterator(Object) |
Memformat Objek yang |
| GetFormats() |
Mengembalikan string yang terkait dengan rentang ini |
| GetHashCode() |
Mengembalikan nilai kode hash untuk objek . (Diperoleh dari Object) |
| GetLimits() |
Mengembalikan batas ini |
| JavaFinalize() |
Dipanggil oleh pengumpul sampah pada objek ketika pengumpulan sampah menentukan bahwa tidak ada lagi referensi ke objek. (Diperoleh dari Object) |
| NextDouble(Double, Boolean) |
Menemukan ganda paling sedikit lebih besar dari |
| NextDouble(Double) |
Menemukan ganda paling sedikit lebih besar dari |
| Notify() |
Membangunkan satu utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| NotifyAll() |
Membangunkan semua utas yang menunggu monitor objek ini. (Diperoleh dari Object) |
| Parse(String, ParsePosition) |
Mengurai Angka dari teks input. |
| Parse(String) |
Mengurai teks dari awal string yang diberikan untuk menghasilkan angka. (Diperoleh dari NumberFormat) |
| ParseObject(String, ParsePosition) |
Mengurai teks dari string untuk menghasilkan |
| ParseObject(String) |
Mengurai teks dari awal string yang diberikan untuk menghasilkan objek. (Diperoleh dari _Format) |
| PreviousDouble(Double) |
Menemukan ganda terbesar kurang dari |
| SetChoices(Double[], String[]) |
Atur pilihan yang akan digunakan dalam pemformatan. |
| SetHandle(IntPtr, JniHandleOwnership) |
Mengatur properti Handle. (Diperoleh dari Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
A |
| ToArray<T>() |
Membuat array terkelola dari pembungkus array Java ini. (Diperoleh dari Object) |
| ToPattern() |
Mendapatkan polanya. |
| ToString() |
Mengembalikan representasi string objek. (Diperoleh dari Object) |
| UnregisterFromRuntime() |
Membatalkan pendaftaran peer Java ini dari runtime interop. (Diperoleh dari Object) |
| Wait() |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <diberitahu></em> atau <em>terganggu</em>. (Diperoleh dari Object) |
| Wait(Int64, Int32) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
| Wait(Int64) |
Menyebabkan utas saat ini menunggu sampai terbangun, biasanya dengan <>diberitahu</em> atau <em>terganggu</em>, atau sampai sejumlah waktu nyata berlalu. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IJavaPeerable.Disposed() |
A |
| IJavaPeerable.Finalized() |
A |
| IJavaPeerable.JniObjectReferenceControlBlock |
A |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
A |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
A |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
A |
| IJavaPeerable.UnregisterFromRuntime() |
A |
Metode Ekstensi
| Nama | Deskripsi |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Mendapatkan nama JNI dari jenis instans |
| JavaAs<TResult>(IJavaPeerable) |
Cobalah untuk memaksa |
| JavaCast<TResult>(IJavaObject) |
Melakukan konversi jenis yang diperiksa runtime Android. |
| JavaCast<TResult>(IJavaObject) |
A |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Cobalah untuk memaksa |