Tələb olunan biliklərin təxmini səviyyəsi: Java Syntax axtarışı və bir az Java Core.
İlk JavaRush tapşırığının sonunda biz tip çevrilməsi haqqında öyrənirik. 10-cu səviyyəli mühazirələrdə siz görə bilərsiniz ki, çevrilmə int
çox sadədir və ümumiyyətlə, demək olar ki, istənilən primitiv tipə problemsiz String
çevrilə bilər .String
int x = 5;
String text = "X=" + x;
Həmçinin, Java Syntax axtarışının 10-cu səviyyəsini artıq başa vuranlar bilirlər ki, nömrəyə istinadı sətir istinadına çevirmək mümkün deyil. Beləliklə, sətri primitiv tam ədədə çevirməyin ən yaxşı yolu nədir? parseInt
Bunu sinif metodundan istifadə etməklə etmək daha yaxşıdır Integer
. Metod parseInt
çevirməli String
və sətir tipə çevrilə bilmədikdə int
istisna atır . NumberFormatException
int
Misal
Sətri tam ədədə çevirən əsas xətt:
int i = Integer.parseInt (myString);
Dəyişən ilə işarələnmiş sətir myString
etibarlı tam ədəddirsə, məsələn, "1", "200", Java onu sakitcə primitiv məlumat növünə çevirəcək int
. Nədənsə bu uğursuz olarsa, belə bir hərəkət istisna yarada bilər NumberFormatException
, buna görə proqramın hər hansı bir sətir üçün düzgün işləməsi üçün bir az daha çox kod lazımdır. Mümkün olanlara çevirmə, idarə etmə Java String
üsulunu nümayiş etdirən proqram : 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());
}
}
Müzakirə
Integer.parseInt (s.trim ())
Yuxarıdakı nümunəni öyrəndiyiniz zaman, sətri s
tam ədədə çevirmək üçün metodun istifadə edildiyini görəcəksiniz i
və bu, aşağıdakı kod sətirində baş verir:
int i = Integer.parseInt (s.trim ())
Ancaq bəzən bir sətri nömrəyə çevirmək sadəcə işləmir. Bizim nümunəmizdə belə bir sətir fred adıdır. Kompüterdə hərflərin yazıldığı kodlardan danışa bilərik, lakin formal desək, fred rəqəm deyil və onu sətir kimi buraxmaq daha yaxşıdır. Proqramımız elə qurulmuşdur ki, əgər siz "fred"-i nömrəyə çevirməyə cəhd etsəniz, proses bir blokda idarə etməli olduğunuz Integer parseInt
bir istisna atacaq . Bu halda siz sinif metodundan istifadə etməli deyilsiniz , lakin real proqramlaşdırmada ondan istifadə etməlisiniz. Beləliklə, sizə göstərdik. Bu mövzu gündəmə gəldiyi üçün burada dərslər mövzusunda bəzi "məsləhətlər" var və : NumberFormatException
try / catch
trim ()
String
String
Integer
Integer.toString (int i)
int
Java sətirlərinə çevirmək üçün istifadə olunur .
String
Obyekti obyektə çevirmək istəyirsinizsə ( ibtidai Integer
sinif əvəzinə ) int
, .valueOf ()
Integer
parseInt ()
- Sətirləri əlavə primitiv Java sahələrinə çevirmək lazımdırsa, bu kimi üsullardan istifadə edin
Long.parseLong ()
.
Cavab verən: Alice Watson
GO TO FULL VERSION