Java的输入和之前学习的python、c和c++好像不大一样,不能直接通过某一个函数读取键盘的输入,而是需要创建一个Scanner类后再对该类的方法进行调用。
创建方法:Scanner [实例对象名] = new Scanner(System.in); 当创建了一个Scanner类后,java代码前方就会出现一句import java.util.Scanner语句, 用于导入对应的Scanner类,如果没有出现的话请添加到代码前面。
import java.util.Scanner; public class fox1 { public static void main(String[] args) { Scanner s=new Scanner(System.in); //创建Scanner的实例对象为s } }不同的数据类型有不同的函数方法进行输入 next方法遇到空白符(空格、制表符、换行符)就会结束输入 nextLine方法遇到换行符会结束输入
类型函数方法字符串[实例对象名].next()字符串[实例对象名].nextLine()整型[实例对象名].nextInt()浮点型[实例对象名].nextFloat()双精度浮点型[实例对象名].nextDouble()这里仅展示其中int类型输入的方法
import java.util.Scanner; public class fox1 { public static void main(String[] args) { Scanner s=new Scanner(System.in); //创建Scanner的实例对象为s int number = s.nextInt(); System.out.print(number); } }在输入的时候可以使用Scanner类的一个方法判断输入数据的类型,如果符合该类型则返回True,否则返回False 函数方法较输入时前面会多一句has且n变为大写,判断输入数据类型的函数不会影响到之后数据的输入。
类型函数方法字符串[实例对象名].hasNext()字符串[实例对象名].hasNextLine()整型[实例对象名].hasNextInt()浮点型[实例对象名].hasNextFloat()双精度浮点型[实例对象名].hasNextDouble()import java.util.Scanner; public class fox1 { public static void main(String[] args) { Scanner s=new Scanner(System.in); //创建Scanner的实例对象为s if(s.hasNextInt()) {//输入数据若为整型时 int number = s.nextInt(); System.out.print(number); } else { System.out.print("不为整型"); } } }