Қажетті білімнің шамамен деңгейі: Java синтаксистік квесті және аздап Java Core.
Бірінші JavaRush квестінің соңында біз типті түрлендіру туралы білеміз. 10-деңгейдегі дәрістерде түрлендіру int
өте қарапайым екенін және жалпы алғанда, кез келген дерлік қарабайыр түрге еш қиындықсыз String
түрлендіруге болатынын көруге болады.String
int x = 5;
String text = "X=" + x;
Сондай-ақ, Java синтаксисі квестінің 10 деңгейін аяқтағандар санға сілтемені жолға сілтемеге түрлендіру мүмкін емес екенін біледі. Сонымен, жолды қарабайыр бүтін санға түрлендірудің ең жақсы жолы қандай? parseInt
Мұны класс әдісі арқылы жасаған дұрыс Integer
. Әдіс түрлендіруі parseInt
керек және жолды type түріне түрлендіру мүмкін болмаса, ерекше жағдайды шығарады . String
int
NumberFormatException
int
Мысал
Жолды бүтін санға түрлендіретін негізгі жол:
int i = Integer.parseInt (myString);
Егер айнымалымен белгіленген жол myString
"1", "200" сияқты жарамды бүтін сан болса, Java оны жай деректер түріне түрлендіреді int
. Егер қандай да бір себептермен бұл орындалмаса, мұндай әрекет ерекше жағдайды тудыруы мүмкін NumberFormatException
, сондықтан бағдарлама кез келген жол үшін дұрыс жұмыс істеуі үшін бізге сәл көбірек code қажет. Мүмкіндіктерді басқару, Java String
түрлендіру әдісін көрсететін бағдарлама : 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());
}
}
Талқылау
Integer.parseInt (s.trim ())
Жоғарыдағы мысалды зерттегенде, жолды s
бүтін санға айналдыру үшін әдіс қолданылатынын көресіз i
және бұл келесі code жолында орын алады:
int i = Integer.parseInt (s.trim ())
Бірақ кейде жолды санға түрлендіру жұмыс істемейді. Біздің мысалда мұндай жол фред атауы болып табылады. Компьютерде әріптер жазылатын codeтар туралы айтуға болады, бірақ ресми түрде айтқанда, fred сан емес, оны жол ретінде қалдырған дұрыс. Біздің бағдарламамыз «fred» сөзін санға түрлендіруге әрекеттенсеңіз, процесс блокта өңдеу керек болатын Integer parseInt
ерекшелік тудыратындай етіп жасалған . Бұл жағдайда сынып әдісін пайдаланудың қажеті жоқ , бірақ нақты бағдарламалауда оны пайдалану керек. Сондықтан біз сізге көрсеттік. Бұл тақырып көтерілгендіктен, мұнда сабақтар тақырыбы бойынша кейбір «кеңестер» берілген : NumberFormatException
try / catch
trim ()
String
String
Integer
Integer.toString (int i)
int
Java жолдарын түрлендіру үшін қолданылады .
String
Егер сіз нысанды нысанға түрлендіргіңіз келсе Integer
(қарапайым класс емес int
), орнына valueOf ()
сыныптағы әдісті пайдаланыңыз .Integer
parseInt ()
- Жолдарды қосымша қарапайым Java өрістеріне түрлендіру қажет болса, осы сияқты әдістерді пайдаланыңыз
Long.parseLong ()
.
Жауап берген: Элис Уотсон
GO TO FULL VERSION