@[TOP]
#包机制
#用户交换Scanner
#1,包机制
(1),其实包就是档案夹
(2),为了更好的,地组织类,JAVA提供了包机制,用于区别类名的命名空间,因此不同包中的类名可以相同,
(3),package pkg1[pkg2[pkg3...]];
(4),一般利用公司域名倒置作为包名 例如百度包名可以为:com.baidu.www
(5),为了能够使用某一个包的成员,我们需要在java程序中明确汇入该包,
 完成此功能,
# 2,用户交换Scanner
(1)Scanner类的介绍:之前我们学的基本语法中我们并不能计算机和人的互动,但是 Java 给我们提供了这样一个工具类,我们可以获取用户的输入,java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来通过用户在键盘上输入资料从而获取用户的输入,
(2)Scanner类的基本语法:
Scanner scanner=new Scanner;
(3)next&nextLine
思路:分别利用next和nextLine从键盘上输入一些内容,可以得出二者的区别
<1>先用next接收一下输入的内容:
import java.util.Scanner;
public class java1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("next的接收方式:");
String str = scanner.next();
System.out.println("输入内容"+str);
//注:凡是属于IO流的类如果不关倍训一直占用资源.要养成好习惯用完就关掉.
scanner.close()
IO流:即输入输出流,跟计算机打交道的,键盘输入,输出,
<2>再用nextLine接收一下内容:
import java.util.Scanner;
public class java1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("nextLine的接收方式:");
String str = scanner.nextLine();
System.out.println("输入内容"+str);
//注:凡是属于IO流的类如果不关倍训一直占用资源.要养成好习惯用完就关掉
scanner.close();
}
二者键盘都输入“hello world”(注意里面有一个空格)可以发现next为
nextLine为:
因此,next()不能得到带有空格的字符串,而nextLine可以,因此,nextLine()比next用的更多,然后havenext 和havenextLine是判断后面还有没有资料,
两者区别总结:
next():
1 、一定要读取到有效字符后才可以结束输入,
2 、对输入有效字符之前遇到的空白, next() 方法会自动将其去掉,
3 、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符,
4 、 next() 不能得到带有空格的字符串,
nextLine():
1 、以 Enter 为结束符 , 也就是说 nextLine() 方法回传的是输入回车之前的所有字符,
2 、可以获得带有空白的字符串,
(4)scanner进阶使用:
我们可以输入多个数字,并求其总和与平均数
ackage cn.itcast.demo;
import java.util.Scanner;
public class test {
public static void main(String[] args) {
//我们可以输入多个数字,并求其总和与平均数,
// 每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果
Scanner scanner = new Scanner(System.in);
double sum=0;
int m=0;
//通过回圈判断是否还有输入,并在里面对每一次进行求和统计
while (scanner.hasNextDouble()){
double x=scanner.nextDouble();
//
m=m+1;//m++//
sum=sum+x; //最终的和等于当前的和加上数字(累加)
System.out.println("你当前输出的是第"+m+"个数"+",然后此时的和为sum:"+sum);
}
System.out.println(m+"个数的和为"+sum);
System.out.println(m+"个数的平均值是"+(sum/m));
scanner.close();
}
}
分别输入10,20,30,40,可得输出结果为:
下面是用代码测验一下hasNextDouble输出:
谢谢各位大佬!
最后感谢狂神大佬:
【狂神说Java】Java零基础学习视频通俗易懂_哔哩哔哩_bilibili
0 评论