package Content; import java.util.*; import java.math.BigInteger; public class In_Out { static final int Max = 1005; public static void main(String[] args) { // 使用Scanner类定义 Scanner scanner = new Scanner(System.in); // 输入 int a = scanner.nextInt(); double b = scanner.nextDouble(); BigInteger c = scanner.nextBigInteger(); long l = 100000000000L; //long型常数要加后缀L // 输出 System.out.println(Max);// 换行 System.out.printf("%d %-10.5f ", a,b); // b格式化输出 :保留5位小数 规定输出的值占10个字符 System.out.println(l); // 多组输入输出 while (scanner.hasNext()) { int a1 = scanner.nextInt(); int a2 = scanner.nextInt(); System.out.println(a1 + a2); break; } char[][] array = new char[105][105]; for(int i=0;i<4;i++) { String string = scanner.next(); for(int j=0;j<string.length();j++) { array[i][j] = string.charAt(j); } } } }
next()&scanner.nextLine()
/*next()与scanner.nextLine()的区别: * next()方法读取到空白符就结束 * next()方法在遇到有效字符前所遇到的空格、tab键、enter键都不能当作结束符,next()方法会自动将其去掉; * 只有当next()方法遇到有效字符之后, * next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符; * 所以next()不能得到带有空格的字符串,只能得到部分字符串(空格前面的)。 * nextInt()、nextDouble()方法与next()方法相同,一定要读取到有效字符以后才可以结束输入。 * * nextLine()读取到回车结束,可以获取到带有空格的字符串; * */ package Content; import java.util.*; public class next_nextLine { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // Welcome to rjmgc! String string1 = scanner.next(); System.out.println("next()方法接收到的字符:" + string1 + " 字符长度:" + string1.length()); // next()方法在遇到有效字符前所遇到的空格、tab键、enter键都不能当作结束符,next()方法会自动将其去掉; // 如果第一次输入的字符串带有空格,next()接收到的是空格前面的,空格以及空格后面的由nextLine()接收了 String string2 = scanner.nextLine(); System.out.println("nextLine()方法接收到的字符:" + string2 + " 字符长度:" + string2.length()); /*当使用next()之后接着使用nextLine(), * 中间需要使用nextLine()用来接收next()或者nextInt()等过滤的回车、tab、空格。 * 这样才能让下面的nextLine()生效,否则它就接收了enter、tab、空格等, * 导致用户没有输入就结束了。*/ //JAVA String string3 = scanner.next(); System.out.println("string3:"+string3); scanner.nextLine(); String string4 = scanner.nextLine(); System.out.println("string4:"+string4); } }