package day12_01;
/*
* 导包;创建对象;调用方法
* System类下有一个静态的字段:
* public static final InputStream in;标准的输入流,对应着键盘输入
*
* InputStream is=System.in
*
* class Demo{
* public static final int x=10;
* public static final Student s=new Student();
* }
*
* int y=Demo.x;
* Student s=Demo.s;
*
*
* 构造方法:
* Scanner(InputStream source)
*/
import java.util.Scanner;//导包
public class ScannerDemo {
public static void main(String[] args) {
//创建对象
Scanner sc=new Scanner(System.in);
int x=sc.nextInt();
System.out.println("x:"+x);
}
}
成员方法
package day12_02;
import java.util.Scanner;
/*
* 基本格式:
* public boolean hasNextXxx():
* public Xxx nextXxx():
*
* 举例:int
* public boolean hasNextInt()
* public int nextInt()
*
* 注意
* InputMismatchException:输入的和你想要的不匹配
*/
public class ScannerDemo {
public static void main(String[] args) {
//创建对象
Scanner sc = new Scanner(System.in);
//获取数据
if(sc.hasNextInt()) {
int x=sc.nextInt();
System.out.println("x:"+x);
}
else {
System.out.println("您输入的数据有误");
}
}
}
常用的两个方法
package day12_03;
import java.util.Scanner;
/*
* 常用的两个方法
* public int nextInt()
* public String nextLine()
*
* 出现问题:先获取一个数值,再获取一个字符串
* 主要原因:换行符号\n
* 解决问题:
* A.先获取一个数值后,再创建一个新的键盘录入对象获取字符串
* B.把所有的数据都先按照字符串,然后要什么,就对应的转换什么
*/
public class ScannerDemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//获取两个int类型的值
// int a=sc.nextInt();
// int b=sc.nextInt();
// System.out.println("a:"+a+",b:"+b);
// System.out.println("-------------");
//获取两个String类的值
// String s1=sc.nextLine();
// String s2=sc.nextLine();
// System.out.println("s1:"+s1+",s2:"+s2);
// System.out.println("-------------");
//先获取一个字符串,在获取一个int值
// String s1=sc.nextLine();
// int b=sc.nextInt();
// System.out.println("s1:"+s1+",b:"+b);
// System.out.println("------------");
//先获取一个int值,在获取一个字符串
// int a =sc.nextInt();
// String s2=sc.nextLine();
// System.out.println("a:"+a+",s2:"+s2);
int a=sc.nextInt();
Scanner sc2=new Scanner(System.in);
String s=sc2.nextLine();
System.out.println("a:"+a+",s:"+s);
}
}