Yangi

Java-da satrlarni raqamlarga va vitse-versiyalarga qanday o'zgartirish mumkin

Java-da satrlarni raqamlarga va vitse-versiyalarga qanday o'zgartirish mumkin

Odatda grafik foydalanuvchi interfeysida foydalanuvchidan raqamli qiymat kiritilishini kutadigan matnli maydonlar bo'ladi. Ushbu raqam qiymati String ob'ektida bo'ladi, agar siz biron-bir arifmetikani qilishni xohlasangiz, sizning dasturingizga haqiqatan ham yordam bermaydi. Yaxshiyamki, ushbu String qiymatlarini raqamlarga aylantirish usullarini ta'minlaydigan o'rash sinflari mavjud va String klassida ularni qayta o'zgartirish usullari mavjud.

Qopqoq darslari

Raqamlar bilan ishlaydigan ibtidoiy ma'lumotlar turlari (ya'ni, bayt, int, juft, suzuvchi, uzun va qisqa) barchasi sinf ekvivalentlariga ega. Ushbu sinflar boshlang'ich ma'lumotlar turini olganligi sababli uni o'rash sinflari deb nomlanadi va uni sinfning funktsional imkoniyatlari bilan o'rab oladi. Masalan, Double class o'zining ma'lumotlari sifatida ikki baravar qiymatga ega bo'ladi va ushbu qiymatni boshqarish usullarini taqdim etadi.

Ushbu o'rash sinflarining barchasida valueOf deb nomlangan usul mavjud. Ushbu usul Stringni argument sifatida qabul qiladi va o'rash sinfining namunasini qaytaradi. Masalan, bizda o'n qiymatli satr bor deylik:

Qator raqami = "10";

Bu raqamni satr sifatida olish biz uchun foydasi yo'q, shuning uchun uni butun son ob'ektiga o'tkazish uchun butun son sinfidan foydalanamiz:

Integer convertedNumber = Integer.valueOf (raqam);

Endi raqam String emas, balki raqam sifatida ishlatilishi mumkin:

convertedNumber = konvertatsiya qilingan raqam + 20;

Siz shuningdek konvertatsiyani oddiy ma'lumotlar turiga o'tishingiz mumkin:

int convertedNumber = Integer.valueOf (raqam) .intValue ();

Boshqa oddiy ma'lumotlar turlari uchun siz to'g'ri bayt-sinf, Bayt, Integer, Ikkilik, Float, Long Short-ga joylashtirasiz.

Eslatma: String ma'lumotlarning tegishli turiga ajratilganligiga ishonch hosil qilishingiz kerak. Agar buni amalga oshira olmasangiz, ish vaqtidagi xatoga yo'l qo'yasiz. Masalan, "o'n" ni butun songa yashirishga urinish:

Qator raqami = "o'n";
int convertedNumber = Integer.valueOf (raqam) .intValue ();

NumberFormatException ishlab chiqaradi, chunki kompilyatorda "o'n" 10 bo'lishi kerak emas.

Agar "int" faqat butun raqamlarni ushlab turishini unutgan bo'lsangiz, yanada quyida shu xato yuz beradi:

Qator raqami = "10.5";
int convertedNumber = Integer.valueOf (raqam) .intValue ();

Tuzuvchi raqamni "int" ga to'g'ri kelmaydi deb o'ylamaydi va NumberFormatException-ni tashlash vaqti keldi deb o'ylaydi.

Raqamlarni satrlarga aylantirish

Raqamga raqamni kiritish uchun String sinfida valueOf usuli mavjud bo'lgani kabi bir xil turdagi naqshlarga amal qiling. Bu har qanday ibtidoiy ma'lumotlar turidagi raqamlarni argument sifatida olishi va String hosil qilishi mumkin:

int soniTwenty = 20;

Satr o'zgartirildi = String.valueOf (numberTwenty);

bu "20" ni co nverted ning String qiymati sifatida qo'yadi.

yoki har qanday o'rash sinfining toString usulidan foydalanishingiz mumkin:

String konvertatsiya qilingan = Integer.toString (numberTwenty);

ToString usuli barcha ob'ekt turlari uchun odatiy holdir - aksariyat hollarda bu ob'ektning tavsifi. O'ralgan sinflar uchun ushbu tavsif ularning tarkibidagi haqiqiy qiymatdir. Ushbu yo'nalishda konversiya biroz mustahkamroq. Agar butun son o'rniga Double class ishlatilsa:

Satr o'zgartirildi = Double.toString (soniTwenty);

natijada ish vaqti xatosi bo'lmaydi. O'zgartirilgan o'zgaruvchiga "20.0" satrini kiritish kerak edi.

Stringlarni bog'lab qo'yganda raqamlarni aylantirishning yanada nozik usuli mavjud. Agar String quyidagicha qurilgan bo'lsa:

String aboutDog = "Mening itim" "raqamTwenty +" yoshda. ";

int raqamiTwenty-ga aylantirish avtomatik ravishda amalga oshiriladi.


Video, Sitemap-Video, Sitemap-Videos