Талап кылынган бorмдердин болжолдуу деңгээли: Java синтаксисинин тапшырмасы жана бир аз Java Core.
Биринчи JavaRush квестинин аягында биз типти конversionлоо жөнүндө билебиз. 10-деңгээлдеги лекцияларда сиз түргө өтүү абдан жөнөкөй экенин int
жана жалпысынан дээрлик бардык примитивдүү түргө көйгөйсүз String
өтсө болот .String
int x = 5;
String text = "X=" + x;
Ошондой эле, Java синтаксисинин 10-деңгээлин аяктагандар санга шилтемени сапка шилтеме жасоо мүмкүн эмес экенин бorшет. Ошентип, сапты примитивдүү бүтүн санга айландыруунун эң жакшы жолу кайсы? 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 ())
айландыруу үчүн колдонулганын көрөсүз жана бул codeдун төмөнкү сабында болот: s
i
int i = Integer.parseInt (s.trim ())
Бирок кээде сапты санга айландыруу жөн эле иштебей калат. Биздин мисалда, мындай сап фред аты болуп саналат. Компьютерде тамгалар жазылган codeдор жөнүндө айтсак болот, бирок, формалдуу айтканда, fred сан эмес, аны сап катары калтырган жакшы. Биздин программабыз "фредди" санга айландырууга аракет кылсаңыз, процесс сиз блокто иштөөгө тийиш болгон Integer parseInt
өзгөчөлүктү ыргытышы үчүн иштелип чыккан . Бул учурда класс ыкмасын колдонуунун кереги жок , бирок реалдуу программалоодо сиз аны колдонушуңуз керек. Ошентип, биз сизге көрсөттүк. Бул тема келип чыккандыктан, бул жерде класстардын темасы боюнча кээ бир "кеңештер" жана : NumberFormatException
try / catch
trim ()
String
String
Integer
Integer.toString (int i)
int
Java саптарына айландыруу үчүн колдонулат .
String
Эгер сиз an objectти an objectке айландыргыңыз келсе Integer
(примитивдүү класстын ордуна ), класстын ордуна класстагы методду int
колдонуңуз .valueOf ()
Integer
parseInt ()
- Эгерде сизге саптарды кошумча примитивдүү Java талааларына айландыруу керек болсо, ушул сыяктуу ыкмаларды колдонуңуз
Long.parseLong ()
.
Жооп берген: Элис Уотсон
GO TO FULL VERSION