scanner对象
通过scanner对象来获取用户的输入
1.语法
Scanner scanner = new Scanner(System.in);
2.通过Scanner类的next()和nextLine()方法来获取输入的字符串。在读取之前我们一般用hasnext()或者hasnextLine()判断是否还有输入的数据
3.凡是属于IO流的类如果不关闭会一直占用资源,养成一个好习惯用完就关掉(close())
4.题目练习
public static void main(String[] args) {
//输入多个数字,然后求平均是和和,通过输入非数字来结束。
double sum = 0 ;
int count = 0 ;
Scanner scanner = new Scanner(System.in);
System.out.println("请输入数字:");
//利用循环和条件判断
while (scanner.hasNextDouble()){
double v = scanner.nextDouble();
sum += v;
count++;
}
System.out.println("和:"+sum);
System.out.println("一共输入了:"+count+"个数字");
System.out.println("平均数数是:"+sum/count);
//凡是属于IO流的类如果不关闭会一直占用资源,养成一个好习惯用完就关掉
scanner.close();
}
public static void main(String[] args) {
/*1、手动输入一行字符(字母+数字),
分别统计出其字母、数字各有多少个,
将结果输出到控制台。*/
Scanner sc = new Scanner(System.in);
System.out.println("请输入:");
String str = sc.next();
char[] arr = str.toCharArray(); // toCharArray() 将字符串拆分成一个一个的字符
int numbeCount = 0;
int zimuCount = 0;
for (int i = 0; i < arr.length; i++) {
if(arr[i] >=‘0‘ && arr[i]<=‘9‘){
System.out.println("数字:"+arr[i]);
numbeCount++;
}
else if((arr[i] >=‘a‘ && arr[i] <= ‘z‘) || (arr[i] >=‘A‘ && arr[i] <= ‘Z‘)){
System.out.println("字母有:"+arr[i]);
zimuCount++;
}
}
System.out.println("数字有:"+numbeCount+"个");
System.out.println("字母:"+zimuCount+"个");
sc.close();//关闭资源
}
}