ახალი

როგორ გადააკეთოთ სიმები რიცხვებად და პირიქით, ჯავაში

როგორ გადააკეთოთ სიმები რიცხვებად და პირიქით, ჯავაში


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

როგორც წესი, გრაფიკული ინტერფეისით, იქნება ტექსტური ველები, რომლებიც მომხმარებელს მოელიან რიცხვითი მნიშვნელობით. ეს რიცხვის მნიშვნელობა დასრულდება სიმებიანი ობიექტით, რომელიც ნამდვილად არ დაეხმარება თქვენს პროგრამას, თუ გსურთ გააკეთოთ არითმეტიკა. საბედნიეროდ, არსებობს გადაფუთვის კლასები, რომლებიც უზრუნველყოფს სიმებიანი მნიშვნელობების რიცხვებად გადაქცევის მეთოდებს და სიმებიანი კლასს აქვს მეთოდი, რომ ისინი კვლავ დააბრუნონ.

შეფუთვის კლასები

მონაცემთა პრიმიტიული ტიპები, რომლებიც ეხება რიცხვებს (მაგ., ბაიტი, ინტ, ორმაგი, float, გრძელი და მოკლე) ყველა აქვს კლასის ექვივალენტები. ეს კლასები ცნობილია როგორც გადაფარვის კლასები, რადგან ისინი იღებენ პრიმიტიული მონაცემების ტიპს და გარშემორტყმულია კლასის ფუნქციურობით. მაგალითად, ორმაგ კლასს ექნება ორმაგი მნიშვნელობა, როგორც მისი მონაცემები და უზრუნველყოფს ამ მნიშვნელობის მანიპულირების მეთოდებს.

შეფუთვის ყველა ამ კლასს აქვს მეთოდი, რომელსაც ეწოდება ღირებულებაOf. ეს მეთოდი იღებს სტრინგს, როგორც არგუმენტს და ბრუნდება კლასის შეფუთვის მაგალითზე. მაგალითად, ვთქვათ, რომ გვაქვს სიმები ათი მნიშვნელობით:

სიმებიანი ნომერი = "10";

ამ რიგის, როგორც სტრიქონის მქონე ჩვენთვის სარგებლობა არ არის, ამიტომ ვიყენებთ Integer კლასს, რომ იგი გადავიდეს Integer ობიექტად:

მოაქციეს პროცენტიNumber = Integer.valueOf (ნომერი);

ახლა რიცხვი შეიძლება გამოყენებულ იქნას როგორც რიცხვი და არა სიმები:

convertedNumber = convertedNumber + 20;

თქვენ ასევე შეგიძლიათ გააკეთოთ, რომ კონვერტირება პირდაპირ გადავიდეს პრიმიტიული მონაცემების ტიპზე:

int convertedNumber = Integer.valueOf (ნომერი) .intValue ();

სხვა პრიმიტიული მონაცემების ტიპებისთვის, თქვენ უბრალოდ შედგით შესაფუთი შეფუთვის კლასში- Byte, Integer, Double, Float, Long Short.

Შენიშვნა: თქვენ უნდა დარწმუნდეთ, რომ სიმები შეიძლება დაყვანილდეს შესაბამის მონაცემთა ტიპში. თუ ეს ვერ შეძლებთ დასრულებას დაშვების შეცდომით. მაგალითად, ცდილობს "ათი" დაფაროთ რიცხვში:

სიმებიანი ნომერი = "ათი";
int convertedNumber = Integer.valueOf (ნომერი) .intValue ();

აწარმოებს NumberFormatException, რადგან შემდგენელს არ აქვს იდეა "ათი" უნდა იყოს 10.

უფრო ჭკვიანურად იგივე შეცდომა მოხდება, თუ დაივიწყებთ, რომ "int" - ს მხოლოდ მთელი რიცხვები შეუძლია:

სიმებიანი ნომერი = "10.5";
int convertedNumber = Integer.valueOf (ნომერი) .intValue ();

შემდგენელი არ შეასრულებს რიცხვს, უბრალოდ იფიქრებს, რომ ის არ ჯდება "int" და რომ დროა გადააგდოთ NumberFormatException.

ნომრების სტრიქონებად გადაქცევა

რიგით სტრიქონის მისაღებად მიჰყვება იგივე ტიპის შაბლონს, როგორც სიმებიან კლასს აქვს ValOf მეთოდიც. მას შეუძლია არგუმენტირებულად მიიღოს მონაცემების პრიმიტიული მონაცემების ნებისმიერი ნომერი და წარმოქმნას სტრიქონი:

int numberTwenty = 20;

სიმებიანი მოაქცია = String.valueOf (numberTwenty);

რომელიც აყენებს "20" -ს, როგორც კოვერთის სიმებიანი მნიშვნელობას.

ან შეგიძლიათ გამოიყენოთ გადასაადგილებელი რომელიმე კლასის შემსწავლელი მეთოდი:

გადაკეთებულია სიმებიანი = Integer.toString (numberTwenty);

ToString მეთოდი საერთოა ყველა ობიექტის ტიპზე - უმეტესწილად ეს მხოლოდ ობიექტის აღწერაა. შეფუთვის კლასებისთვის, ეს აღწერა არის მათი მნიშვნელოვანი ღირებულება. ამ მიმართულებით, კონვერსია ცოტა უფრო ძლიერია. თუ ორმაგი კლასი გამოიყენებოდა ინტერესის ნაცვლად:

სიმებიანი მოაქცია = Double.toString (numberTwenty);

შედეგი არ გამოიწვევს ხანგრძლივობის შეცდომას. მოქცეული ცვლადი შეიცავს სტრიქონს "20.0".

ასევე არსებობს უფრო დახვეწილი გზა ციფრების გადაქცევისას, როდესაც ხდება სტრიქონების დადება. თუ სიმები უნდა აშენდეს, როგორიცაა:

String aboutDog = "ჩემი ძაღლი არის" + ნომერი მრავალი + "წლის.";

int რიცხვის გარდაქმნა ხდება ავტომატურად.


Video, Sitemap-Video, Sitemap-Videos