Scanner类 简记

用Scanner类获取用户的输入

注:以下所述作为笔记以供复阅
		或有谬误,需自察

我们可以用Scanner类来获取用户的输入,简单用nextInt()、nextFloat()、nextDouble
分别来获取int、float和double类型的输入,用next()或nextLine()来获取字符串类型的输入。但要注意next系列方法的连用,以及next()与nextLine()的异同。

package tools;

import java.util.Scanner;

public class InputTypes {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		/*多行注释快捷键:
		 * 选中你要加注释的区域,用ctrl+/ 会加上//注释
		 * 重复按一下就会去掉加上的注释
		 * */
		 * 
		/*
		 * 运用Scanner类
		 * */
		Scanner scan =new Scanner(System.in);
		
		System.out.println("输入一个整数:");
		int num1 = scan.nextInt();
		
		System.out.println("输入一个浮点数");
		float num2 = scan.nextFloat();
		
/*	next系列方法的连用:	
 * nextInt()或者nextFloat()或next()在读取数字时,不会将转义字符读进去,因此换行字符就留在了输入缓冲区上,
		而nextLine()方法是以换行字符为结束符将数据与结束符读入。所以就会出现在nextInt()或nextFloat()方法后的nextLine
		读入的时空字符串。
		解决方法:
		(1)在nextInt()和nextLine()中间加上一个nextLine()
		(2)都使用nextLine()进行读取,在读取整数时采用integer类的parseInt()方法转换成整数
*/
		scan.nextLine();
		System.out.println("输入一个字符串:");
		String str1 = scan.nextLine();
		
		System.out.println("前三个的输出:"+num1+"\n"+num2+"\n"+str1);
		



		/* next()与nextLine()的异同:
			 * next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,
			 * next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。
			 * next()查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息,所以next方法不能得到带空格的字符串。
			 * 
			 * nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
			 * */

//		System.out.println("读取多行字符串(使用nextLine()):");
//		while(scan.hasNext()) {
//			System.out.println(scan.nextLine());
//		}
//		
		
//		System.out.println("读取多行字符串(使用next()):");
//		while(scan.hasNext()) {
//			System.out.println(scan.next());
//		}
		
		
		
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值