Java輸入輸出語句舉例詳解(通俗易懂!)
一、輸出語句
Java常用的輸出語句有三種:
1)System.out.println();
換行輸出,輸出后會自動換行。
//示例
System.out.println("Hello");
System.out.println("World");
//輸出
Hello
World
2)System.out.print();
不換行輸出。
//示例
System.out.print("Hello");
System.out.print("World");
//輸出
HelloWorld
3)System.out.printf();類似C語言的printf()輸出語句
按格式輸出。
常見的格式控制符如下:
//%表示進行格式化輸出,%之后的內(nèi)容為格式的定義
格式控制符 說明
--------------------------------------------------
%d 輸出int型數(shù)據(jù)
%c 輸出char型數(shù)據(jù)
%f 輸出浮點型數(shù)據(jù),小數(shù)部分最多保留6位
%s 輸出字符串?dāng)?shù)據(jù)
%md 輸出的int型數(shù)據(jù)占m列
%m.nf 輸出的浮點型數(shù)據(jù)占m列,小數(shù)點保留n位
//示例1
int m = 16;
System.out.printf("%d",m);//16 %d表示輸出十進制整數(shù)
//輸出
16
//示例2
int a = 8;
int m = 16;
float n = 3.1415926f;
System.out.printf("%6d,%6d,%6.2f", a, m, n);
//輸出
8, 16, 3.14
二、輸入語句
鍵盤輸入代碼的四個步驟:
1、導(dǎo)包:import java.util.Scanner;
2、創(chuàng)建Scanner類型的對象:Scanner scanner= new Scanner( System.in) ;
3、調(diào)用Scanner類的相關(guān)方法(next() / nextXxx()) ,來獲取指定類型的變量
4、釋放資源:調(diào)用Scanner對象的close()方法,scanner.close();
2.1、Scanner基礎(chǔ)用法
//1、導(dǎo)包
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法(`next() / nextXxx()`) ,來獲取指定類型的變量
String str1 = scanner.next();
System.out.println("輸入的數(shù)據(jù)為:" + str1);
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.2、標(biāo)準(zhǔn)寫法
需要斷是否還有輸入
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法next方式接收字符串
if(scanner.hasNext()){// 判斷是否還有輸入
String str1 = scanner.next();
System.out.println("輸入的數(shù)據(jù)為:" + str1);
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.3、String 字符串類型數(shù)據(jù)輸入
String 類型字符串輸入有兩種方法:next() 和 nextLine();但是next() 和 nextLine()是有區(qū)別的,項目看詳細例子。
2.3.1、使用next()方法
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法next方式接收字符串
if(scanner.hasNext()){// 判斷是否還有輸入
String str1 = scanner.next();
System.out.println("輸入的數(shù)據(jù)為:" + str1);
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

觀察上面輸出結(jié)果,發(fā)現(xiàn)沒有輸出world,即第一個空格后面的字符串不讀取,只讀取第一個空格前面的字符串
2.3.2、使用nextLine()方法
//1、導(dǎo)包
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextLine方式接收字符串
if(scanner.hasNextLine()){// 判斷是否還有輸入
String str1 = scanner.nextLine();
System.out.println("輸入的數(shù)據(jù)為:" + str1);
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

nextLine()方法返回的是輸入回車之前的所有字符,包括空格。
2.4、整數(shù)類型輸入
2.4.1、整數(shù) byte 類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextByte方式接收整數(shù)
if (scanner.hasNextByte()) {
// 判斷輸入的是否是整數(shù)
byte i = scanner.nextByte();
// 接收整數(shù)
System.out.println("接收整數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.4.2、整數(shù) short 類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextShort方式接收整數(shù)
if (scanner.hasNextShort()) {
// 判斷輸入的是否是整數(shù)
short i = scanner.nextShort();
// 接收整數(shù)
System.out.println("接收整數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.4.3、整數(shù) int 類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextInt方式接收整數(shù)
if (scanner.hasNextInt()) {
// 判斷輸入的是否是整數(shù)
int i = scanner.nextInt();
// 接收整數(shù)
System.out.println("接收整數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.4.4、整數(shù) long 類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextLong方式接收整數(shù)
if (scanner.hasNextLong()) {
// 判斷輸入的是否是整數(shù)
long i = scanner.nextLong();
// 接收整數(shù)
System.out.println("接收整數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.5、浮點數(shù)輸入
2.5.1、浮點數(shù) float 輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入小數(shù)或整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextFloat方式接收小數(shù)數(shù)據(jù)
if (scanner.hasNextFloat()) {
// 判斷輸入的是否是小數(shù)數(shù)據(jù)
float i = scanner.nextFloat();
// 接收整數(shù)
System.out.println("接收小數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)或小數(shù)數(shù)據(jù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.5.2、浮點數(shù) double 類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入小數(shù)或整數(shù):" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextDouble方式接收小數(shù)數(shù)據(jù)
if (scanner.hasNextDouble()) {
// 判斷輸入的是否是小數(shù)數(shù)據(jù)
double i = scanner.nextDouble();
// 接收整數(shù)
System.out.println("接收小數(shù)數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是整數(shù)或小數(shù)數(shù)據(jù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.6、boolean 布爾類型輸入
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入布爾值:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法nextBoolean方式接收布爾數(shù)據(jù)
if (scanner.hasNextBoolean()) {
// 判斷輸入的是否是布爾數(shù)據(jù)
boolean i = scanner.nextBoolean();
// 接收整數(shù)
System.out.println("接收布爾數(shù)據(jù):" + i);
} else {
// 輸入錯誤的信息
System.out.println("輸入的不是布爾數(shù)據(jù)!");
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

2.7、char 字符型數(shù)據(jù)輸入
Scanner類中提供了獲取byte \ short \ int \ long \float \double \boolean \ String 類型變量的方法。
但是,沒有提供獲取char類型變量的方法。需要使用next().charAt(0)
import java.util.Scanner;
//1、導(dǎo)包
public class HelloWorld {
public static void main(String[] args) {
//2、定義一個Scanner對象
Scanner scanner = new Scanner(System.in);
System.out.println("請輸入:" );//輸出提示信息
//3、調(diào)用Scanner類的相關(guān)方法next方式接收數(shù)據(jù)
if (scanner.hasNext()) {
// 獲取第一個字符
char i = scanner.next().charAt(0);
// 接收字符
System.out.println("接收數(shù)據(jù):" + i);
}
//4、釋放資源:調(diào)用Scanner對象的close()方法, `scanner.close();`
scanner.close();
}
}

總結(jié)
到此這篇關(guān)于Java輸入輸出語句舉例詳解的文章就介紹到這了,更多相關(guān)Java輸入輸出語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot整合RocketMQ極速實戰(zhàn)教程
本文詳細介紹了SpringBoot集成RocketMQ的全過程,涵蓋普通、廣播、順序、延遲、批量、過濾、事務(wù)等多種消息模式,通過自動裝配、全局配置、核心組件等介紹RocketMQ與SpringBoot的深入集成原理與實戰(zhàn)應(yīng)用,感興趣的朋友一起看看吧2026-06-06
java中關(guān)于文本文件的讀寫方法實例總結(jié)
這篇文章主要介紹了java中關(guān)于文本文件的讀寫方法,實例總結(jié)了Java針對文本文件讀寫的幾種常用方法,并對比了各個方法的優(yōu)劣及特點,具有一定參考借鑒價值,需要的朋友可以參考下2015-11-11
java如何將map數(shù)據(jù)存入到實體類對象中
在Java編程中,經(jīng)常需要將Map集合中的數(shù)據(jù)轉(zhuǎn)換為實體類對象,這可以通過反射機制實現(xiàn),即通過遍歷Map對象,使用反射根據(jù)鍵名對應(yīng)實體類的屬性名,動態(tài)調(diào)用setter方法將值設(shè)置到實體對象中,這樣的操作使得數(shù)據(jù)從Map結(jié)構(gòu)轉(zhuǎn)移到了具體的JavaBean中,便于后續(xù)的操作和管理2024-09-09
Spring?Cloud?中使用?Sentinel?實現(xiàn)服務(wù)限流的兩種方式
這篇文章主要介紹了Spring?Cloud?中使用?Sentinel?實現(xiàn)服務(wù)限流的方式,通過示例代碼主要介紹了Sentinel的兩種實現(xiàn)限流的方式,需要的朋友可以參考下2024-03-03
SpringBoot3實現(xiàn)數(shù)據(jù)備份操作的多種方法全解析
在當(dāng)今數(shù)字化時代,數(shù)據(jù)已然成為企業(yè)最為寶貴的資產(chǎn)之一,Spring Boot 3 作為一款廣受歡迎的 Java 開發(fā)框架,為我們實現(xiàn)高效、可靠的數(shù)據(jù)備份操作提供了豐富的工具與便捷的方式,下面我們就來看看具體實現(xiàn)方法吧2025-12-12
IDEA2019.3配置Hibernate的詳細教程(未使用IDEA的自動化)
這篇文章主要介紹了IDEA2019.3配置Hibernate的詳細教程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
spring redis 如何實現(xiàn)模糊查找key
這篇文章主要介紹了spring redis 如何實現(xiàn)模糊查找key的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
解決Java執(zhí)行Cmd命令出現(xiàn)的死鎖問題
這篇文章主要介紹了關(guān)于Java執(zhí)行Cmd命令出現(xiàn)的死鎖問題解決,解決方法就是在waitfor()方法之前讀出窗口的標(biāo)準(zhǔn)輸出、輸出、錯誤緩沖區(qū)中的內(nèi)容,本文給大家介紹的非常詳細,需要的朋友可以參考下2022-07-07

