Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako získate vstup do dvojitej hodnoty v programovaní Java?

Existuje niekoľko spôsobov, ako využiť vstup dvojitého hodnoty v programovaní Java, v závislosti od toho, či čítate z konzoly alebo zo súboru.

1. Použitie „Scanner“ (pre vstup konzoly):

Toto je najbežnejšia metóda na získanie vstupu používateľa z konzoly.

`` `Java

import java.util.scanner;

verejná trieda Doubleinput {

public static void main (String [] args) {

Scanner Scanner =nový Scanner (System.in);

System.out.print („Zadajte dvojitú hodnotu:“);

// Na čítanie dvojitého použite NextDouble ()

Double DoubleValue =Scanner.NextDouble ();

System.out.println ("Zadali ste:" + doubleValue);

Scanner.Close (); // Dôležité:Po dokončení zatvorte skener

}

}

`` `

Dôležité úvahy s `Scanner`:

* Manipulácia s chybami: `NextDouble ()` Hodí `InputMisMatchException` Ak používateľ zadá niečo, čo nie je platné dvojité (napr. Text). Túto výnimku by ste mali zvládnuť pomocou bloku `Try-Catch`, aby ste zabránili zlyhaniu vášho programu:

`` `Java

import java.util.inputMisMatchException;

import java.util.scanner;

verejná trieda DoubleinputWithExceptionHandling {

public static void main (String [] args) {

Scanner Scanner =nový Scanner (System.in);

System.out.print („Zadajte dvojitú hodnotu:“);

dvojitá dvojitá hodnota;

skús {

DoubleValue =Scanner.NextDouble ();

} catch (InputMisMatchException e) {

System.out.println ("Neplatný vstup. Zadajte platný dvojitý.");

Scanner.next (); // konzumujte neplatný vstup

návrat; // alebo zvládnuť chybu iným spôsobom

}

System.out.println ("Zadali ste:" + doubleValue);

Scanner.Close ();

}

}

`` `

* `Scanner.next ()`: „Scanner.Next ()` Volanie do bloku `Catch` je rozhodujúci. Ak dôjde k „InputMisMatchException“, neplatný vstup zostáva v vyrovnávacej pamäti „Scanner“. `Scanner.next ()` spotrebuje tento neplatný vstup, čo umožňuje programu znova vyzvať používateľa bez uviaznutia v nekonečnej slučke.

2. Pomocou `BufferedReader` (pre vstup konzoly alebo súboru):

„BufferedReader“ je efektívnejší pre veľké vstupy, ale vyžaduje viac manuálneho analýzy.

`` `Java

import java.io.bufferedReader;

import java.io.ioException;

import java.io.inputstreamReader;

verejná trieda DoubleinputBuffeRedReader {

public static void main (String [] args) {

BufferedReader Reader =nový BufferedReader (nový InputStreamReader (System.in));

System.out.print („Zadajte dvojitú hodnotu:“);

skús {

String Input =reader.ReadLine ();

Double DoubleValue =Double.ParSedouble (vstup);

System.out.println ("Zadali ste:" + doubleValue);

} catch (ioException e) {

System.out.println („Vstup na čítanie chýb:“ + e.getMessage ());

} catch (numberFormatexception e) {

System.out.println ("Neplatný vstup. Zadajte platný dvojitý.");

}

}

}

`` `

Táto metóda používa „Double.ParSedouble ()` na konverziu vstupu reťazca na dvojité. Zahŕňa tiež spracovanie chýb pre `ioException` (chyba vstupu/výstupu) a` numberFormatexception` (formát neplatného čísla).

3. Argumenty príkazového riadku:

Pri spustení vášho programu Java môžete prejsť dvojitou hodnotou ako argument príkazového riadku.

`` `Java

verejná trieda DoubleinputCommandline {

public static void main (String [] args) {

if (args.length> 0) {

skús {

Double DoubleValue =Double.ParSedouble (args [0]);

System.out.println ("Zadali ste:" + doubleValue);

} catch (numberFormatexception e) {

System.out.println ("Neplatný vstup. Uveďte platný dvojitý ako argument príkazového riadku.");

}

} else {

System.out.println ("Uveďte dvojitú hodnotu ako argument príkazového riadku.");

}

}

}

`` `

Nezabudnite zostaviť a spustiť to z vášho terminálu, ako je tento:`Java DoubleInputCommandline 3.14159`

Vyberte metódu, ktorá najlepšie vyhovuje vašim potrebám, a nezabudnite vždy zahrnúť robustné spracovanie chýb, aby bol váš program odolnejší. Prístup „Scanner“ je vo všeobecnosti uprednostňovaný pre jeho jednoduchosť a vstavané schopnosti spracovania chýb pri prijímaní vstupu z konzoly. „BufferedReader“ ponúka lepší výkon pre veľké súbory. Argumenty príkazového riadku sú užitočné na poskytovanie vstupov pri spustení programu z terminálu.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené