JavaRush /Java blogi /Random-UZ /Savol-javob: Java'da Stringni int ga qanday qilib to'g'ri...

Savol-javob: Java'da Stringni int ga qanday qilib to'g'ri aylantirish mumkin?

Guruhda nashr etilgan
Talab qilinadigan bilimlarning taxminiy darajasi: Java Syntax quest va biroz Java Core.
Savol-javob: Java'da Stringni int ga qanday qilib to'g'ri aylantirish mumkin?  - 1
Birinchi JavaRush kvestining oxirida biz turni o'zgartirish haqida bilib olamiz. 10-darajali ma'ruzalarda siz o'zgartirish juda oddiy intekanligini va umuman, deyarli har qanday ibtidoiy turga muammosiz Stringaylantirilishi 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? parseIntBuni sinf usuli yordamida qilish yaxshidir Integer. Usul ga parseIntaylantirishi kerak va agar satrni type ga aylantirib bo'lmasa, istisno qiladi . StringintNumberFormatExceptionint

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 Stringaylantirish usulini ko'rsatadigan dastur : intNumberFormatException
public class JavaStringToIntExample
{
  public static void main (String[] args)
  {
    // String s = "fred"; // use this if you need to test the //exception below
String s = "100";

    try
    {
      // this is where String is converted to int
      int i = Integer.parseInt(s.trim());

      // display the value after conversion
      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: si
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 parseIntistisnoni 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 : NumberFormatExceptiontry / catchtrim ()StringStringInteger
  • Integer.toString (int i)intJava satrlariga aylantirish uchun ishlatiladi .
  • StringAgar ob'ektni ob'ektga aylantirmoqchi bo'lsangiz Integer(ibtidoiy sinf o'rniga int), . o'rniga valueOf ()sinfdagi usuldan foydalaning .IntegerparseInt ()
  • Agar siz satrlarni qo'shimcha ibtidoiy Java maydonlariga aylantirishingiz kerak bo'lsa, shunga o'xshash usullardan foydalaning Long.parseLong ().
Javob bergan: Elis Uotson
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION