Tinatayang antas ng kinakailangang kaalaman: Java Syntax quest at kaunting Java Core.
Sa pagtatapos ng unang JavaRush quest, nalaman namin ang tungkol sa uri ng conversion. Sa antas 10 na mga lektura, makikita mo na ang pag-convert int
sa String
ay napakasimple, at sa pangkalahatan, halos anumang primitive na uri ay maaaring ma-convert sa String
walang problema.
int x = 5;
String text = "X=" + x;
Gayundin, alam ng mga nakatapos na sa level 10 ng Java Syntax quest na imposibleng i-convert ang isang reference sa isang numero sa isang reference sa isang string. Kaya ano ang pinakamahusay na paraan upang i-convert ang isang string sa isang primitive integer? Mas mainam na gawin ito gamit ang paraan ng parseInt
klase Integer
. Ang pamamaraan parseInt
ay dapat mag-convert String
sa int
at magtapon ng isang pagbubukod NumberFormatException
kung ang string ay hindi mako-convert sa uri int
.
Halimbawa
Pangunahing linya na nagko-convert ng string sa isang integer:
int i = Integer.parseInt (myString);
Kung ang string na tinutukoy ng variable myString
ay isang wastong integer, gaya ng "1", "200", tahimik itong iko-convert ng Java sa isang primitive na uri ng data int
. Kung sa ilang kadahilanan ay nabigo ito, ang naturang aksyon ay maaaring magtapon ng exception NumberFormatException
, kaya para gumana nang tama ang program para sa anumang string, kailangan namin ng kaunti pang code. Isang program na nagpapakita ng paraan ng pag-convert Java String
sa int
, kontrol para sa posibleng 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());
}
}
Pagtalakay
Kapag pinag-aralan mo ang halimbawa sa itaas, makikita mo na ang pamamaraan Integer.parseInt (s.trim ())
ay ginagamit upang gawing s
integer ang isang string i
, at ito ay nangyayari sa sumusunod na linya ng code:
int i = Integer.parseInt (s.trim ())
Ngunit kung minsan ang pag-convert ng isang string sa isang numero ay hindi gagana. Sa aming halimbawa, tulad ng isang string ay ang pangalan fred. Maaari nating pag-usapan ang tungkol sa mga code kung saan nakasulat ang mga titik sa isang computer, ngunit, pormal na pagsasalita, si fred ay hindi isang numero, at mas mahusay na iwanan ito bilang isang string. Ang aming programa ay idinisenyo upang kung susubukan mong i-convert ang "fred" sa isang numero, ang proseso Integer parseInt
ay magtapon ng exception NumberFormatException
, na dapat mong hawakan sa isang block try / catch
. Sa kasong ito hindi mo kailangang gamitin ang paraan trim ()
ng klase String
, ngunit sa totoong programming dapat mong gamitin ito. Kaya ipinakita namin ito sa iyo. Dahil lumabas na ang paksang ito, narito ang ilang "pahiwatig" sa paksa ng mga klase String
at Integer
:
Integer.toString (int i)
ginamit upang i-convert int
sa mga string ng Java.
- Kung gusto mong i-convert ang isang bagay
String
sa isang bagay Integer
(sa halip na isang primitive class int
), gamitin ang valueOf ()
on-class na paraan Integer
sa halip na ang parseInt ()
.
- Kung kailangan mong i-convert ang mga string sa karagdagang primitive na mga patlang ng Java, gumamit ng mga pamamaraan tulad ng
Long.parseLong ()
isang ito.
Sinagot ni: Alice Watson
GO TO FULL VERSION