java.util.Scanner应用浅析
2014-12-09 20:24
232 查看
java.util.Scanner
java.util.Scanner主要功能是简化文本扫描,这个类主要应用在获取控制台输入,是新手必须入门使用的一个包。
在刚开始使用Eclipse时,调试时需要获取输入String或者数字时,总是不得技巧,每次都是在Eclipse中编辑好后,放到Drjava的命令行中去直接使用。回首发现,Eclipse的Console似乎是那么不堪,但得知Scanner这个类后,才发现另一片天地(大雾。。。)
扯淡结束,回到java.util.Scanner。
经典代码,即看即会:
实用方法:
delimiter()
返回此 Scanner 当前正在用于匹配分隔符的 Pattern。
hasNext()
判断扫描器中当前扫描位置后是否还存在下一段。
hasNextLine()
如果在此扫描器的输入中存在另一行,则返回 true。
next()
查找并返回来自此扫描器的下一个完整标记。
nextLine()
此扫描器执行当前行,并返回跳过的输入信息。
----------------------------------------------------------------------------------------------------------------------
必须掌握的部分,show
me the code!
1.修改分隔符:
类也可以直接返回整数或者小数
整数:
判断是否是整数:public
boolean hasNextInt(),判断是否是整数,如果是则返回true
接收数据 :public
int nextInt()
小数
判断是否是小数:public
boolean hasNextFloat()
接收数据:public
float nextFloat()
3.从文件中读取信息
使用scanner
直接读取文件内容
假设:d:\test.txt
文件(有内容)
总结:
1、掌握Scanner 类作用:方便的读取数据
2、在读取操作的时候一定要注意分隔符的影响
附注:部分代码参考@中国风2012 博客的内容,感谢您的知识提炼
java.util.Scanner主要功能是简化文本扫描,这个类主要应用在获取控制台输入,是新手必须入门使用的一个包。
在刚开始使用Eclipse时,调试时需要获取输入String或者数字时,总是不得技巧,每次都是在Eclipse中编辑好后,放到Drjava的命令行中去直接使用。回首发现,Eclipse的Console似乎是那么不堪,但得知Scanner这个类后,才发现另一片天地(大雾。。。)
扯淡结束,回到java.util.Scanner。
经典代码,即看即会:
Scanner sc = new Scanner(System.in); int i = sc.nextInt();---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
实用方法:
delimiter()
返回此 Scanner 当前正在用于匹配分隔符的 Pattern。
hasNext()
判断扫描器中当前扫描位置后是否还存在下一段。
hasNextLine()
如果在此扫描器的输入中存在另一行,则返回 true。
next()
查找并返回来自此扫描器的下一个完整标记。
nextLine()
此扫描器执行当前行,并返回跳过的输入信息。
----------------------------------------------------------------------------------------------------------------------
必须掌握的部分,show
me the code!
1.修改分隔符:
Scanner useDelimiter(String pattern)
import java.util.* ; public class UseScanner{ public static void main(String args[]){ Scanner scan = new Scanner(System.in) ; // 从键盘接收数据 System.out.print("输入数据:") ; scan.useDelimiter("\n") ; String str = scan.next() ; // 接收数据 System.out.println("输入的数据为:" + str) ; } };2.Scanner
类也可以直接返回整数或者小数
整数:
判断是否是整数:public
boolean hasNextInt(),判断是否是整数,如果是则返回true
接收数据 :public
int nextInt()
小数
判断是否是小数:public
boolean hasNextFloat()
接收数据:public
float nextFloat()
import java.util.* ; public class UseScanner{ public static void main(String args[]){ Scanner scan = new Scanner(System.in) ; // 从键盘接收数据 int i = 0 ; float f = 0.0f ; System.out.print("输入整数:") ; if(scan.hasNextInt()){ // 判断输入的是否是整数 i = scan.nextInt() ; // 接收整数 System.out.println("整数数据:" + i) ; }else{ System.out.println("输入的不是整数!") ; } System.out.print("输入小数:") ; if(scan.hasNextFloat()){ // 判断输入的是否是小数 f = scan.nextFloat() ; // 接收小数 System.out.println("小数数据:" + f) ; }else{ System.out.println("输入的不是小数!") ; } } };
3.从文件中读取信息
使用scanner
直接读取文件内容
假设:d:\test.txt
文件(有内容)
import java.util.* ; import java.text.* ; import java.io.* ; public class ScannerDemo{ public static void main(String args[]){ File f = new File("D:" + File.separator + "test.txt") ; // 指定操作文件 Scanner scan = null ; try{ scan = new Scanner(f) ; // 从键盘接收数据 }catch(Exception e){} String str = null ; if(scan.hasNext()){ str = scan.next(); // 取数据 } System.out.println("文件内容为:" + str) ; } };现在的文件内容确实读取进来,但是此程序依然不完美。以上只能读取出第一行数据,因为存在换行,所以认为读完了。
import java.util.* ; import java.text.* ; import java.io.* ; public class ScannerDemo05{ public static void main(String args[]){ File f = new File("D:" + File.separator + "test.txt") ; // 指定操作文件 Scanner scan = null ; try{ scan = new Scanner(f) ; // 从键盘接收数据 }catch(Exception e){} StringBuffer str = new StringBuffer() ; while(scan.hasNext()){ str.append(scan.next()).append('\n') ; // 取数据 } System.out.println("文件内容为:" + str) ; } };-------------------------------------------------------------------------------------------------------
总结:
1、掌握Scanner 类作用:方便的读取数据
2、在读取操作的时候一定要注意分隔符的影响
附注:部分代码参考@中国风2012 博客的内容,感谢您的知识提炼
韩世雷
相关文章推荐
- java.util.Scanner应用详解 转
- java.util.Scanner应用详解
- java基础(33)--java.util.Scanner应用详解
- java.util.Scanner应用详解
- java.util.Scanner应用详解
- (转)java.util.Scanner应用详解
- java.util.concurrent.Exchanger应用范例与原理浅析--转载
- java.util.Scanner应用详解--阿冬专栏
- java.util.Scanner简单应用
- java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.Scanner应用详解
- 【多线程】java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.Scanner应用详解 转
- java.util.Scanner应用详解
- java.util.Scanner应用详解
- java.util.concurrent.Exchanger应用范例与原理浅析--转载
- java.util.concurrent.Exchanger应用范例与原理浅析
- java.util.Scanner应用详解
- java.util.Scanner应用详解
- java.util.Scanner应用详解