Uživatelská zkušenost je často nedílnou součástí programování v Javě. Jedním z důležitých úkolů je zadávání hodnot z klávesnice. Java poskytuje několik způsobů, jak získat data od uživatele, z nichž každý má své vlastní vlastnosti a funkce.
Jedním z nejběžnějších způsobů je použití třídy Scanner. Tato třída poskytuje jednoduché a pohodlné metody pro práci se zadáváním dat. Příklad použití třídy Scanner může vypadat následovně:
Dalším oblíbeným způsobem zadávání dat je použití třídy BufferedReader. Tato třída poskytuje nižší úroveň přístupu k vstupnímu toku. Příklad použití třídy BufferedReader může vypadat následovně:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println ("zadejte své jméno:");
String name = reader.readLine();
Kromě toho existuje v Javě několik dalších způsobů, jak psát data z klávesnice, jako je použití třídy Console nebo použití argumentů příkazového řádku. Každý z nich má svá specifika a uplatnění v určitých situacích. Je důležité vybrat nejvhodnější způsob zadávání dat pro váš konkrétní úkol.
Hlavní způsoby zadávání hodnot z klávesnice v Javě: příklady a průvodce
1. Použití třídy Scanner:
Třída Scanner umožňuje číst vstup z klávesnice. Pro použití této metody je nutné vytvořit objekt třídy Scanner a vyvolat jeho metody pro čtení hodnot. Například pro zadání celého čísla lze použít metodu nextInt():
import java.util.Scanner;public class Main >
2. Použití třídy BufferedReader:
Třída BufferedReader poskytuje metody pro čtení znaků a řádků ze vstupního toku, včetně vstupu z klávesnice. Pro použití této metody je nutné vytvořit objekt třídy BufferedReader a použít metody readLine () nebo read (). K zadání řádku lze použít například metodu readLine():
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main catch (IOException e) System.out.println("Вы ввели: " + line);>>
3. Použití metody System.console().readLine():
Metoda System.console().readLine () umožňuje číst řádek z klávesnice. Tato metoda však musí být použita v konzolové aplikaci a nebude fungovat v některých vývojových prostředích, jako je Eclipse. Například:
public class Main >
Naučili jste se tedy základní způsoby zadávání hodnot z klávesnice v Javě. Použijte tyto metody ve svých programech v závislosti na konkrétním úkolu. Doufejme, že vám tento materiál pomůže stát se zkušenějšími v programování v jazyce Java.
Zadání hodnot pomocí třídy Scanner
V Javě lze pro zadávání hodnot z klávesnice použít třídu Scanner. Umožňuje číst data různých typů, jako jsou celá čísla, zlomková čísla, řetězce a další.
Chcete-li pracovat s třídou Scanner, musíte vytvořit instanci této třídy. Níže je uveden příklad vytvoření objektu třídy Scanner:
Scanner scanner = new Scanner(System.in);
Jakmile je objekt Scanner vytvořen, můžete použít jeho metody ke čtení hodnot. Nejjednodušší způsob je metoda next (), která čte jedno slovo (před první mezerou) nebo celý řádek:
System.out.print("Введите ваше имя: ");String name = scanner.next();System.out.println("Привет, " + name + "!");
Pokud je třeba počítat celé číslo, lze použít metodu nextInt(). Například:
System.out.print("Введите ваш возраст: ");int age = scanner.nextInt();System.out.println("Ваш возраст: " + age);
Podobně lze číst zlomková čísla pomocí metody nextDouble (). Například:
System.out.print("Введите вес: ");double weight = scanner.nextDouble();System.out.println("Ваш вес: " + weight);
Po přečtení požadovaných hodnot se doporučuje zavřít objekt třídy Scanner pomocí metody close ().
scanner.close();
Nyní víte, jak zadávat hodnoty z klávesnice pomocí třídy Scanner v Javě.
Použití BufferedReader ke čtení hodnot z klávesnice
Chcete-li začít, musíte vytvořit objekt BufferedReader pomocí návrháře a vstupního toku spojeného se systémovým vstupem:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Poté můžete použít metody BufferedReader ke čtení hodnot z klávesnice. Jednou z nejpoužívanějších metod je metoda readLine (), která čte řádek ze vstupu:
String input = reader.readLine();
Přečtený řádek je uložen v proměnné input a nyní lze tuto proměnnou použít k dalšímu zpracování v programu.
K převodu vstupu na jiné datové typy, jako jsou celá čísla nebo čísla s plovoucím bodem, lze použít příslušné metody převodu, jako je Integer.parseInt () nebo Double.parseDouble(). Například:
int number = Integer.parseInt(input);
Pokud je to možné, nezapomeňte zpracovat výjimky, které mohou nastat při používání BufferedReader, jako je IOException. Výjimky mohou nastat, když dojde k chybám I / O, například pokud uživatel zavře konzolu nebo dojde k problému s připojením k I / O zařízení.
Zde je jednoduchý příklad použití BufferedReader ke čtení hodnoty z klávesnice:
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main catch (IOException e) >>
V tomto příkladu bude uživatel vyzván k zadání svého jména a věku, poté program zobrazí zprávy pomocí zadaných dat.
Zadávání hodnot pomocí třídy Console
V Javě lze pro zadávání hodnot z klávesnice použít třídu Console . Tato třída poskytuje praktické metody pro čtení vstupu z konzole.
Nejprve musíte získat instanci třídy Console . K tomu lze použít metodu System.console() . Je však třeba vzít v úvahu, že tato metoda může vrátit null, pokud konzole není k dispozici. Před použitím metod třídy Console byste jej proto měli zkontrolovat na null .
Jednou z hlavních metod třídy Console pro zadávání hodnot řetězce je readLine (). Tato metoda čte řádek z klávesnice a vrací zadanou hodnotu.
Příklad použití metody readLine() :
import java.io.Console;public class ConsoleExample else >>
Metodu readLine () lze také použít s argumentem-řádkem pozvánky. V takovém případě se pozvánka zobrazí před zadáním hodnoty.
Kromě metody readLine () poskytuje třída Console také metody pro čtení různých typů čísel , jako je readInt() pro čtení celých čísel a readDouble() pro čtení čísel s plovoucí desetinnou čárkou.
Příklad použití metody readInt() :
import java.io.Console;public class ConsoleExample else >>
Třída Console tak poskytuje praktické metody pro zadávání hodnot z klávesnice do Javy.