Scanner学习总结

来源:互联网 发布:头发毛躁怎么办知乎 编辑:程序博客网 时间:2024/06/05 04:43
  1. java.util.Scanner的总结  
  2. //构造方法(常用的三个)  
  3. //Scanner(File source) 参数为文件
  4. //Scanner(InputStream source)   参数为输入流  eg:system.in
  5. //Scanner(String source)        参数为字符串
  6.   
  7. //对比两种方式的比较  
  8. //Scanner sc=new Scanner(System.in);   
  9. //BufferedReader br=new BufferedReader(new InputStreamReader(System.in))   
  10.   
  11. //方法  
  12. //useDelimiter(Pattern pattern)改变token的分割方式,默认的是空格,传Pattern对象  
  13. //useDelimiter(String pattern)改变token的分割方式,默认的是空格,传String  
  14.   
  15. //hasNext();查看是否有token的分割段  
  16. //hasNextInt();查看是否有int类型的token的分割段  
  17. //nextInt();返回下一个int的数值  
  18. //nextLine();返回一行  
  19.   
  20. //hasNext(Pattern pattern);返回下一个pattern类型的token  
  21.   
  22. public class ScannerTest {  
  23.     public static void main(String[] args){  
  24.         String str = "1.1 22.2 s 4 5.3 6 7.5 8 9";  
  25.         Scanner scanner = new Scanner(str);  
  26.         //scanner.useDelimiter("\\.");  
  27.         while(scanner.hasNext()){  
  28.             if(scanner.hasNext(Pattern.compile("\\d\\.\\d"))){  
  29.                 System.out.println(scanner.next());  
  30.             }else{  
  31.                 scanner.next();//要调用一下next()相关的方法才会到下一个token  
  32.             }  
  33.         }             
  34.     }  
  35. }  
  36.   
  37. 结果:  
  38. 1.1  
  39. 5.3  
  40. 7.5  
  41.   
  42.   
  43. public class ScannerTest {  
  44.     public static void main(String[] args){  
  45.         String str = "1.2 s.4 5 6.7 8 9";  
  46.         Scanner scanner = new Scanner(str);  
  47.                   //token以.分割  
  48.         scanner.useDelimiter("\\.");  
  49.         while(scanner.hasNext()){  
  50.             System.out.println(scanner.next());  
  51.         }             
  52.     }  
  53. }  
  54. 结果:
  55. 1
  56. 2 s
  57. 4 5 6
  58. 7 8 9

0 0
原创粉丝点击