Java Float.parseFloat() meetod
Javas on kõige lihtsam ja laialdasemalt kasutatav meetod stringi ujukomaarvuks teisendamiseks Float.parseFloat() meetodi kasutamine. See staatiline meetod on osa ujukomaarvude ümbrisklassist ja võtab ühe argumendi, mis sisaldab ujukomaarvu stringiesitust. Meetod tagastab primitiivse ujukomaarvu , mis esindab sisendstringi numbrilist väärtust.
String str = "3.14";
float floatNum = Float.parseFloat(str);
System.out.println("Converted float: " + floatNum);
Ülaltoodud näites loome esmalt stringi string , mis esindab ujukomaarvu „3.14“. Seejärel kutsume välja meetodi Float.parseFloat() , kasutades seda stringi argumendina. See meetod töötleb sisendstringi ja tagastab primitiivse ujukomaarvu, mille salvestame muutujasse floatNum . Lõpuks prindime saadud ujukomaarvu konsoolile.
NumberFormatExceptioni käsitlemine
Stringide ujukomaarvudeks teisendamisel meetodi Float.parseFloat() abil on oluline arvestada võimalusega, et esineb NumberFormatException . Kui sisendstring sisaldab mittenumbrilisi märke või on valesti vormindatud, viskab meetod selle erandi, mis põhjustab programmi krahhi, kui seda ei käsitleta õigesti.
Selliste probleemide vältimiseks on võimalike erandite käsitlemiseks soovitatav kasutada proovivõtuplokki.
String str = "3.14a";
float floatNum = 0;
try {
floatNum = Float.parseFloat(str);
} catch (NumberFormatException e) {
System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);
Selles näites on meil sisendstring str, mille vorming on sobimatu mittenumbriliste märkide tõttu. Float.parseFloat() meetodi kutsumisel try-ploki sees saame NumberFormatException'i ohutult käsitleda ilma programmi krahhita. Catch-plokk käivitub erandi ilmnemisel, hoiatades kasutajat sobimatu sisendi eest ja lubades programmil jätkata.
Java kümnendvormingu klass ja Parse() meetod
Teine viis stringi ujukomaks teisendamiseks Javas hõlmab DecimalFormat klassi kasutamist, mis kuulub paketti java.text . See klass võimaldab kümnendarvude vormindamise ja parsimise üle täpsemat kontrolli, sealhulgas toetab lokaalispetsiifilisi arvuvorminguid.
Klass DecimalFormat pakub meetodit parse() , mis võtab argumendina stringi ja tagastab Number- objekti. Seejärel saab selle objekti teisendada primitiivseks ujukomaväärtuseks:
import java.text.DecimalFormat;
import java.text.ParseException;
String str = "3,14";
DecimalFormat decimalFormat = new DecimalFormat();
Number number;
float floatNum = 0;
try {
number = decimalFormat.parse(str);
floatNum = number.floatValue();
} catch (ParseException e) {
System.out.println("Invalid format: " + e.getMessage());
}
System.out.println("Converted float: " + floatNum);
Selles näites impordime esmalt vajalikud klassid paketist java.text . Seejärel loome objekti DecimalFormat , mis võimaldab meil parsida sisendstringi str , mis sisaldab lokaalispetsiifilist kümnendkoha eraldajat. Meetodit parse() kutsutakse välja try-ploki sees ja tulemus salvestatakse Number- objekti. Lõpuks teisendame selle arvu meetodi floatValue() abil primitiivseks ujukomaarvuks ja kuvame tulemuse konsoolile.
Kokkuvõttes on stringi teisendamine ujukomaks Java programmeerimises põhiülesanne ning on oluline mõista selle teisendusprotsessiga seotud erinevaid meetodeid, teeke ja funktsioone. Uurides Float.parseFloat() meetodit, käsitledes NumberFormatException'i ja kasutades DecimalFormat klassi võimalusi , saavad arendajad stringid usaldusväärselt numbrilisteks väärtusteks teisendada ja luua töökindlaid ja mitmekülgseid Java rakendusi.