一. JAVA学习系列笔记
1.scanner的使用
scanner类主要用来获取用户的输入
分为两种方式next()和nextline()两种方式
个人在学习的过程感觉两者的功能和C语言中的input+scanf二者的功能集合
1.1 二者的使用方式
以next()为例,本例使用了package,此处在使用中需要先声明
代码如下
package example; //包的位置以及声明
import java.util.Scanner; //使用import声明Scanner类
public class Demo01 {
public static void main (String[] args)
{
//scanner下next方式扫描
Scanner scanner =new Scanner (System.in);
System.out.println(“使用next方式进行接收:”);
//判断用户有无输入字符串,此处使用if语句
if (scanner.hasNext())
{
String str =scanner.next ();//使用next方式
System.out.println("输出的内容为:"+str);
}
scanner.close() ;//关闭
}
}
1.2 nextline()方式如下
package example; //包的位置以及声明
import java.util.Scanner; //使用import声明Scanner类
public class Demo01 {
public static void main (String[] args)
{
//scanner下nextline方式扫描
Scanner scanner =new Scanner (System.in);
System.out.println("使用nextline方式进行接收:");
//判断用户有无输入字符串,此处使用if语句
if (scanner.hasNextLine())
{
String str =scanner.nextline();//使用next方式
System.out.println("输出的内容为:"+str);
}
scanner.close() ;//关闭
}
}
二者从代码的角度来看区别不大
2.两者的不同
2.1 next()
1.读取到有效字符后才可以结束
2.next()方法会自动去掉读取到有效字符之前的空格,并且在读取到有效字符之后,才可以将空白作为分隔或者结束符。
3.故有2可知,此方法不可以得到带空格的字符串。
2.2 nextline()
1.以enter为结束符,即在enter之前输入的都可以得到,包括空格输入的
2.较之于next()方法,此方法可以获得带空格的字符串