Java中的hasNext()和while()函數(shù)是非常常見(jiàn)的用于循環(huán)讀取數(shù)據(jù)的函數(shù)。這兩個(gè)函數(shù)在Java中的IO操作、文件操作、網(wǎng)絡(luò)編程等方面非常常見(jiàn),是Java編程語(yǔ)言中最基礎(chǔ)和常用的語(yǔ)句之一。
import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("請(qǐng)輸入一句話:"); while (scanner.hasNext()) { String str = scanner.nextLine(); System.out.println("你輸入的話是:" + str); } scanner.close(); } }
在上述代碼中,我們使用了Scanner類(lèi)提供的hasNext()和while()函數(shù)來(lái)實(shí)現(xiàn)從控制臺(tái)讀取一句話并輸出該話的功能。首先我們使用Scanner創(chuàng)建一個(gè)對(duì)象,然后調(diào)用對(duì)象的hasNext()函數(shù)判斷控制臺(tái)是否輸入了內(nèi)容。如果控制臺(tái)輸入了內(nèi)容,則while()循環(huán)會(huì)一直執(zhí)行下去。
在while循環(huán)中我們通過(guò)調(diào)用Scanner的nextLine()函數(shù)來(lái)讀取整行輸入,然后將其存儲(chǔ)到str變量中。最后,我們將讀取到的內(nèi)容打印輸出。
當(dāng)Scanner輸入流結(jié)束,即沒(méi)有讀取到更多的輸入時(shí),hasNext()函數(shù)返回false,while循環(huán)結(jié)束,程序結(jié)束執(zhí)行。
總的來(lái)說(shuō),hasNext()和while()函數(shù)是Java編程中非常基礎(chǔ)和常用的語(yǔ)句,尤其在IO操作、文件操作和網(wǎng)絡(luò)編程中經(jīng)常使用。程序員們需要熟練掌握這兩個(gè)函數(shù)的使用方法,并能結(jié)合其他語(yǔ)句和函數(shù)使用以實(shí)現(xiàn)更為復(fù)雜的功能。