Programovací jazyk Java ve světě vývoje softwaru je velmi populární. Jedním z hlavních úkolů, které je třeba řešit při vytváření programů, je zadávání dat. Ve většině případů uživatel komunikuje s programy prostřednictvím klávesnice. Proto je vlastnictví dovedností pro zadávání dat z klávesnice v jazyce Java důležité a nezbytné pro začínajícího programátora.
V tomto článku se podíváme na základní metody a nástroje, které vám umožní snadno a efektivně provádět zadávání dat z klávesnice v jazyce Java.
Jak víme, Java poskytuje pohodlné nástroje pro práci se zadáváním dat. Jedním z těchto nástrojů je třída Scanner. Umožňuje číst data z klávesnice v různých formátech, jako jsou celá čísla, desetinná čísla, řádky atd.Chcete-li začít s třídou Scanner, musíte vytvořit její instanci. K načtení dat z klávesnice pak lze použít různé metody této třídy.
Základy zadávání dat
Než začnete psát data z klávesnice, musíte do kódu importovat třídu Scanner:
import java.util.Scanner;
Poté můžete vytvořit objekt třídy Scanner a použít jej ke čtení dat z klávesnice. Chcete-li například zadat celé číslo, můžete použít následující kód:
Scanner scanner = new Scanner(System.in);int number = scanner.nextInt();
V tomto příkladu je vytvořen objekt scanner typu Scanner, který bude číst data z klávesnice. Pomocí metody nextInt () se pak čte celé číslo, které je uloženo v proměnné number .
Můžete také zadat data jiných typů, jako jsou čísla s plovoucí desetinnou čárkou nebo řetězce:
float floatValue = scanner.nextFloat();String string = scanner.nextLine();
Jakmile jsou data přečtena, lze je použít k provádění požadovaných operací v programu.
Při používání třídy Scanner byste však měli být pozorní a vyvarovat se chyb. Pokud například zadáte číslo, když se očekává řetězec, může dojít k vyloučení Javy.util.InputMismatchException .
Při práci s třídou Scanner je také nutné zajistit zpracování případu, kdy zadaná data neodpovídají očekávanému formátu.
Typy dat pro vstup
Při zadávání dat z klávesnice v jazyce Java můžete použít různé typy dat podle toho, jaké hodnoty očekáváte. Zde jsou některé z nejpoužívanějších datových typů:
- int: představuje celočíselné hodnoty, jako je 1, 2, 100. Použijte tento typ dat, pokud potřebujete získat celé číslo.
- double: představuje čísla s plovoucím bodem, jako je 3.14, 2.71828. Pokud potřebujete získat desetinné číslo, použijte tento typ dat.
- String: představuje řetězce znaků jako "Ahoj", "svět". Pokud potřebujete získat textové informace, použijte tento typ dat.
- boolean: představuje logické hodnoty true nebo false . Použijte tento typ dat, pokud potřebujete odpověď na otázku "ano" nebo "ne".
Při zadávání dat musíte zadat očekávaný typ dat. Pokud například očekáváte zadání celého čísla, můžete použít následující kód:
Scanner scanner = new Scanner(System.in);int number = scanner.nextInt();
V tomto příkladu vytvoříme objekt Scanner pro čtení dat z klávesnice a pomocí metody nextInt() získáme celé číslo.
Použijte příslušný typ dat podle toho, jaká data očekáváte, a nezapomeňte zkontrolovat zadané hodnoty, aby odpovídaly očekávanému typu dat.
Čtení dat z klávesnice
Začít s třídou Scanner musí být importován do programu:
import java.util.Scanner;
Poté bude možné vytvořit instanci třídy Scanner a použít jej ke čtení dat z klávesnice:
Scanner scanner = new Scanner(System.in);
Nyní, když máme instanci třídy Scanner, lze použít jeho metody ke čtení různých typů dat. Například metoda nextInt() umožňuje počítat celé číslo z klávesnice:
int number = scanner.nextInt();
A metoda nextDouble() umožňuje počítat číslo s plovoucím bodem:
double number = scanner.nextDouble();
Lze použít i metodu nextLine() pro čtení řádku:
String line = scanner.nextLine();
Jakmile jsou data přečtena, lze je použít v programu podle vlastního uvážení.
Je důležité si uvědomit, že po použití metod nextInt(), nextDouble() a další související se čtením dat z klávesnice je třeba přidat volání metody nextLine() pro čištění vyrovnávací paměti skeneru.
Třída Scanner
Příklady použití třídy Scanner :
| Metoda | Popis |
|---|---|
| next() | Čte další Token (slovo) ze vstupu jako řádek. |
| nextInt() | Čte další Token ze vstupu jako celé číslo (int). |
| nextDouble() | Čte další Token ze vstupu jako reálné číslo (double). |
| nextLine() | Přečte celý aktuální řádek ze vstupu. |
Příklad použití třídy Scanner ke čtení celého čísla:
import java.util.Scanner;public class Main >
V tomto příkladu je vytvořen nový objekt třídy Scanner pomocí konstruktoru Scanner(System.in), který přijímá vstupní datový tok z klávesnice. Poté je povolána metoda nextInt () pro čtení celého čísla z klávesnice. Výsledek je uložen v proměnné number, kterou poté zobrazíme na obrazovce.
Metoda next () pro čtení řádku
Metoda Next () se používá ke čtení řádku z konzole. Čte všechny znaky až do první mezery nebo symbolu nového řádku. Metoda vrací výsledný řádek jako objekt typu String.
Chcete-li použít metodu next (), musíte vytvořit objekt třídy Scanner a předat jej jako argument objektu System.in, který představuje standardní tok vstupu (klávesnice).
Níže je uveden příklad kódu, který pro čtení řádku demonstruje použití metody next() :
import java.util.Scanner;public class Main >
Při provádění tohoto kódu program očekává zadání řádku z klávesnice. Po zadání řádku se zobrazí na obrazovce.
Metoda next () je vhodná pro použití, když je třeba počítat pouze jedno slovo nebo jednu hodnotu oddělenou mezerou.
Metoda nextInt () pro čtení celých čísel
Chcete-li použít metodu nextInt (), musíte nejprve vytvořit objekt třídy Scanner . To lze provést následovně:
Scanner scanner = new Scanner(System.in);
Po vytvoření objektu třídy Scanner můžeme použít metodu nextInt () ke čtení celých čísel z klávesnice. Metoda nextInt () blokuje program a čeká na zadání celého čísla z klávesnice. Po zadání čísla program pokračuje ve svém provádění.
Příklad použití metody nextInt() :
Scanner scanner = new Scanner(System.in);System.out.print("Введите целое число: ");int number = scanner.nextInt();System.out.println("Вы ввели число: " + number);
V tomto příkladu bude uživatel vyzván k zadání celého čísla. Po zadání čísla jej program zobrazí na obrazovce.
Při používání metody nextInt () musíte být opatrní a zvážit možné výjimky. Pokud uživatel zadá celé číslo, program zobrazí chybu. Pro zpracování výjimek lze použít blok try-catch nebo zkontrolovat zadané hodnoty pomocí metod hasNextInt() nebo nextLine() .
Použití metody nextInt () ke čtení celých čísel z klávesnice vám umožní pohodlně komunikovat s uživatelem a získat potřebná data, aby program fungoval.