Java Scanner对象是一个用于从输入流中获取用户输入信息的类。其中,hasNext()和next()是Scanner类中常用的方法,用于读取输入流中的下一个token(以空格、tab、换行符为分隔符),并检测输入流是否还有下一个token。
hasNext()方法的使用
hasNext()方法用于检测输入流是否还有下一个token。其语法如下:
public boolean hasNext()
返回值为布尔类型,当输入流中还有token未被读取时,返回true,否则返回false。
示例1:使用hasNext()读取输入流中的字符串
import java.util.Scanner;
public class ScannerExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入字符串:");
if (scanner.hasNext()) {
String str = scanner.next();
System.out.println("读取的字符串为:" + str);
}
}
}
运行结果:
请输入字符串:Hello World
读取的字符串为:Hello
在以上示例中,使用hasNext()方法判断输入流中是否还有未读取的字符串。如果有,使用next()方法读取该字符串并输出。
next()方法的使用
next()方法用于读取输入流中的下一个token。其语法如下:
public String next()
返回值为字符串类型,表示读取的Token。
示例2:使用next()读取输入流中的整数
import java.util.Scanner;
public class ScannerExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入整数:");
int i = scanner.nextInt();
System.out.println("读取的整数为:" + i);
}
}
运行结果:
请输入整数:123
读取的整数为:123
在以上示例中,使用next()方法读取输入流中的整数,并使用nextInt()方法将该token转换为整数类型。最后输出读取到的整数。
综上所述,hasNext()方法和next()方法是Scanner类中常用的方法,用于读取输入流中的下一个token和检测输入流是否还有下一个token。在使用这些方法时,需要注意不同的数据类型需要使用不同的方法来读取和解析。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java Scanner对象中hasNext()与next()方法的使用 - Python技术站