当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Scanner next()用法及代码示例


next() 是 Java Scanner 类的一个方法,它从正在使用的扫描器中查找并返回下一个完整的令牌。 Java Scanner next() 方法共有三种不同类型,可以根据其参数进行区分。这些是:

  • Java 扫描器 next() 方法
  • Java Scanner next(String pattern) 方法
  • Java Scanner next(Pattern pattern) 方法

1. Java Scanner next() 方法

它是一个 Scanner 类方法,用于从正在使用的扫描器中获取下一个完整的令牌。一个完整的标记前后是与分隔符模式匹配的输入。

2. Java Scanner next(String pattern) 方法

它是一个 Scanner 类方法,如果它与从指定字符串构造的模式匹配,则返回下一个标记。

3. Java Scanner next(Pattern pattern)方法

它是一个 Scanner 类方法,如果它与指定的模式匹配,则返回下一个标记。

用法

以下是 next() 方法的声明:

public String next()
public String next(String pattern)
public String next(Pattern pattern)

参数

数据类型 参数 描述 必需/可选
String pattern 它是一个字符串,指定要扫描的模式。 Required
Pattern pattern 它是扫描指定字符串的模式。 Required

返回

next() 方法返回下一个完整的标记。

异常

NoSuchElementException - 如果找不到更多令牌,它将抛出此异常。

IllegalStateException - 如果在 Scanner 关闭后完成调用,它将抛出此异常。

兼容版本

Java 1.5 及以上

例子1

import java.util.*;
public class ScannerNextExample1 {  
	public static void main(String[] args) {	
		System.out.print("Enter full name:");		
		//Create scanner object and read the value from the console
		Scanner scan = new Scanner(System.in);
		//Read the first token
		String firstName = scan.next();
		//Read the second token
		String lastName = scan.next();
		//Print the token values read by Scanner object
		System.out.println("First Name is:"+firstName);
		System.out.println("Last Name is:"+lastName);	
		scan.close();

	}
}

输出:

Enter full name:Hritik Roshan
First Name is:Hritik
Last Name is:Roshan

例子2

import java.io.File;
import java.io.FileNotFoundException;
import java.util.*;  
public class ScannerNextExample2 {  
     public static void main(String args[]) throws FileNotFoundException{ 
    	      //Declare File object
 		File file = new File("/home/javatpoint/Desktop/ABHISHEK/AngularJS/Index/abc.txt");
 		//Initialize the scanner
 		Scanner scan = new Scanner(file);
 		// iterate through the file line by line
 		while(scan.hasNextLine()){
 			//Print the contents of a file by line
 			System.out.println(scan.next());
 		}
 		scan.close();
     }  
}

输出:

hasNextLine
public
boolean
hasNextLine()
IllegalStateException

例子3

import java.util.*;  
public class ScannerNextExample3 {  
     public static void main(String args[]) { 
    	 String s = "Facebook.com \n JavaTpoint.com 22 60.0";
         //Create a new scanner with the specified String Object
         Scanner scanner = new Scanner(s);
         //Find the next token and print it
         System.out.print("Token Value1 " + scanner.next());
         System.out.print("\nToken value2:" + scanner.next());
         scanner.close();
     }  
}

输出:

Token Value1 Facebook.com
Token value2:JavaTpoint.com

示例 4

import java.util.*;  
public class ScannerNextExample4 {  
     public static void main(String args[]) { 
    	//Initialize Scanner object
 		Scanner scan = new Scanner("22 313 45 87");
 		//Intialize the String pattern
 		String pattern = "[0-9]*";
 		//Print the tokenized Strings
 		while(scan.hasNext()){
 			System.out.println("tokenized Strings:"+scan.next(pattern));
 		}
 		scan.close();
     }  
}

输出:

tokenized Strings:22
tokenized Strings:313
tokenized Strings:45
tokenized Strings:87

例 5

import java.util.*;
import java.util.regex.Pattern;
public class ScannerNextExample5 {  
    public static void main(String args[]){   	
    	  String str = "JavaTpoint Hello World!";
        Scanner scanner = new Scanner(str);
        //Check if next token matches the pattern and print it
        System.out.println("" + scanner.next(Pattern.compile(".....point")));
        //Check if next token matches the pattern and print it
        System.out.println("" + scanner.next(Pattern.compile("..llo")));
        scanner.close();
        }  
}

输出:

JavaTpoint
Hello


相关用法


注:本文由纯净天空筛选整理自 Java Scanner next() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。