怀念夏天 发表于 2024-5-14 10:48:38

Java学习 用户交互 Scanner

Scanner 是Java5提供的新特性 可以用来获取用户的输入 需要引入import java.util.Scanner;类
底子语法:      Scanner scanner = newScanner(System.in);
可以通过Scanner类的next()和nextLine()来获取输入的字符串一样平常在输入前使用 hasnext()和 hasNextLine()用来判断是否有输入的数据
next()与nextLine()区别:
① next():对输入有效字符后的空缺next()方法会自动将其去掉 next()不能得到带有空格的字符串
package Scanner; import java.util.Scanner; public class Demo01 {   public static void main(String[] args) { //      创建一个对象用户获取输入         Scanner scanner = newScanner(System.in);         System.out.println("获取next"); //      判断有没有输入         if(scanner.hasNext()){             String str =scanner.next();             System.out.println("输入为:"+str);         }   } }
效果:
输入
hello word
获取输入hello
② nextLine():以回车作为结束符 nextLine()获取的是输入回车符之前的全部字符 可以得到空缺
`package Scanner;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
//    创建类来获取用户输入
Scanner scanner = new Scanner(System.in);
System.out.println("输入");
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("获取输入"+str);
}
}
}
`
效果:
输入
hello word
获取输入hello word
别的Scanner 还存在输入hasNextFloat()小数 hasNextInt()整数 hasNextBoolen布尔值等类型
小案例: 输入数据求输入数据的和数求均匀值 输入数字以外的数据来结束输入并输入效果
`package Scanner;
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int i =0;
double sum =0;
while(scanner.hasNextDouble()){
double x = scanner.nextDouble();
i = i+1;
sum =sum+x;
System.out.println("你输入了第"+i+"个数据,效果为"+sum);
}
System.out.println("总和为:"+i);
System.out.println("均匀值为:"+(sum)/i);
}
}
`
效果为:
10
你输入了第1个数据,效果为10.0
20
你输入了第2个数据,效果为30.0
40
你输入了第3个数据,效果为70.0
z
总和为:3
均匀值为:23.333333333333332
小白学习 如有其他意见 渴望大家多多提出 谢谢

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Java学习 用户交互 Scanner