Bagaimana cara mengubah string menjadi integer?
Saya memiliki kotak teks. Saya meminta pengguna memasukkan nomor:
EditText et = (EditText) findViewById(R.id.entry1);
String hello = et.getText().toString();
Dan nilai ditugaskan ke string hello
.
Saya ingin mengubahnya menjadi integer sehingga saya bisa mendapatkan nomor yang mereka ketikkan; itu akan digunakan nanti dalam kode.
Apakah ada cara untuk mendapatkan EditText
integer? Itu akan melewati orang tengah. Jika tidak, string ke integer akan baik-baik saja.
Jawaban:
Lihat kelas Integer dan
parseInt()
metode statis :http://developer.android.com/reference/java/lang/Integer.html
Anda perlu menangkapnya
NumberFormatException
jika terjadi masalah saat parsing, jadi:sumber
sumber
Gunakan ekspresi reguler:
output: i = 1234;
Jika Anda memerlukan kombinasi angka pertama maka Anda harus mencoba kode di bawah ini:
output: i = 123;
sumber
Gunakan ekspresi reguler:
keluaran:
sumber
Menggunakan ekspresi reguler adalah cara terbaik untuk melakukan ini sebagaimana telah disebutkan oleh ashish sahu
sumber
Coba kode ini benar-benar berfungsi.
sumber
Cara terbaik untuk mengubah string Anda menjadi int adalah:
sumber
Anda harus String terselubung untuk mengapung. Ini bekerja.
sumber
Anda bisa menggunakan yang berikut ini untuk mengurai string ke integer:
int value = Integer.parseInt (textView.getText (). toString ());
(1) input: 12 maka akan berfungsi .. karena textview telah menggunakan 12 angka ini sebagai string "12".
(2) masukan: "abdul" maka akan muncul pengecualian yaitu NumberFormatException. Jadi untuk mengatasi ini kita perlu menggunakan try catch seperti yang saya sebutkan di bawah ini:
Anda mungkin juga ingin merujuk ke tautan berikut untuk informasi lebih lanjut: http://developer.android.com/reference/java/lang/Integer.html
sumber
Anda juga dapat melakukannya satu baris:
Membaca dari urutan eksekusi
findViewById(R.id.button1)
((Button)______)
untuk melemparkanView
sebagai aButton
.GetText()
untuk mendapatkan entri teks dari Tombol.toString()
untuk mengubah Karakter Memvariasikan ke String.ReplaceAll()
dengan"[\\D]"
untuk mengganti semua Karakter Non Digit dengan "" (tidak ada)Integer.parseInt()
ambil dan kembalikan integer dari string Digit-only.sumber
Metode yang jauh lebih sederhana adalah dengan menggunakan
decode
metodeInteger
jadi misalnya:sumber
Kotlin
Ada metode ekstensi yang tersedia untuk mengurai mereka menjadi tipe primitif lainnya.
"10".toInt()
"10".toLong()
"true".toBoolean()
"10.0".toFloat()
"10.0".toDouble()
"10".toByte()
"10".toShort()
Jawa
sumber
Ada lima cara untuk mengonversi The First Way:
Cara kedua:
Cara Ketiga:
Jalan Keempat:
Jalan Kelima:
Mungkin ada cara lain Tapi itu yang saya ingat sekarang
sumber