Talab qilinadigan bilimlarning taxminiy darajasi: Java Syntax quest va biroz Java Core.
Birinchi JavaRush kvestining oxirida biz turni o'zgartirish haqida bilib olamiz. 10-darajali ma'ruzalarda siz o'zgartirish juda oddiy int
ekanligini va umuman, deyarli har qanday ibtidoiy turga muammosiz String
aylantirilishi mumkinligini ko'rishingiz mumkin.String
int x = 5;
String text = "X=" + x;
Bundan tashqari, Java Sintaksis kvestining 10-darajasini allaqachon tugatganlar bilishadiki, raqamga havolani satrga havola qilish mumkin emas. Shunday qilib, satrni ibtidoiy butun songa aylantirishning eng yaxshi usuli qanday? parseInt
Buni sinf usuli yordamida qilish yaxshidir Integer
. Usul ga parseInt
aylantirishi kerak va agar satrni type ga aylantirib bo'lmasa, istisno qiladi . String
int
NumberFormatException
int
Misol
Satrni butun songa aylantiruvchi asosiy qator:
int i = Integer.parseInt (myString);
Agar o'zgaruvchi bilan belgilangan qator myString
"1", "200" kabi haqiqiy butun son bo'lsa, Java uni jimgina ibtidoiy ma'lumotlar turiga aylantiradi int
. Agar biron sababga ko'ra bu bajarilmasa, bunday harakat istisnoga olib kelishi mumkin NumberFormatException
, shuning uchun dastur har qanday satr uchun to'g'ri ishlashi uchun bizga biroz ko'proq kod kerak bo'ladi. Mumkin bo'lganlarni boshqarish, Java String
aylantirish usulini ko'rsatadigan dastur : int
NumberFormatException
public class JavaStringToIntExample
{
public static void main (String[] args)
{
String s = "100";
try
{
int i = Integer.parseInt(s.trim());
System.out.println("int i = " + i);
}
catch (NumberFormatException nfe)
{
System.out.println("NumberFormatException: " + nfe.getMessage());
}
}
Munozara
Yuqoridagi misolni o'rganib chiqqach, ushbu usul qatorni butun songa Integer.parseInt (s.trim ())
aylantirish uchun ishlatilishini ko'rasiz va bu quyidagi kod qatorida sodir bo'ladi: s
i
int i = Integer.parseInt (s.trim ())
Ammo ba'zida satrni raqamga aylantirish shunchaki ishlamaydi. Bizning misolimizda bunday satr fred nomidir. Biz kompyuterda harflar yozilgan kodlar haqida gapirishimiz mumkin, ammo rasmiy ravishda aytganda, fred raqam emas va uni satr sifatida qoldirish yaxshiroqdir. Bizning dasturimiz shunday tuzilganki, agar siz "fred" ni raqamga o'zgartirmoqchi bo'lsangiz, jarayon siz blokda ishlashingiz kerak bo'lgan Integer parseInt
istisnoni keltirib chiqaradi . Bunday holda siz sinf usulini ishlatishingiz shart emas , lekin haqiqiy dasturlashda siz undan foydalanishingiz kerak. Shunday qilib, biz buni sizga ko'rsatdik. Ushbu mavzu paydo bo'lganligi sababli, sinflar mavzusiga oid ba'zi "maslahatlar" va : NumberFormatException
try / catch
trim ()
String
String
Integer
Integer.toString (int i)
int
Java satrlariga aylantirish uchun ishlatiladi .
String
Agar ob'ektni ob'ektga aylantirmoqchi bo'lsangiz Integer
(ibtidoiy sinf o'rniga int
), . o'rniga valueOf ()
sinfdagi usuldan foydalaning .Integer
parseInt ()
- Agar siz satrlarni qo'shimcha ibtidoiy Java maydonlariga aylantirishingiz kerak bo'lsa, shunga o'xshash usullardan foydalaning
Long.parseLong ()
.
Javob bergan: Elis Uotson
GO TO FULL VERSION