不积硅步无以至千里,不积小流无以成江海。----荀子《劝学》
02day推荐教师:西部开源-狂神 推荐视频:bilibili遇见狂神说 作者:4Yue
-
上期小计答案:334
今天,带大家了解一下类型转换以及运算符和Scanner对象
一、类型转换### 1.众所周知,Java是一种强类型语言,当一种级别高的类型向级别低的类型进行转换时,需要进行强制转换。
例如:
int t = 16; byte e = (byte) t; //类型:byte、short、char————>int————>long————>float————>double //级别:低——————————————————————————————————————————————————>高
由于int的级别要比byte要高,因此,在进行转换时要进行强制转换。
小思考:假如 t = 128,会发生什么呢?
众所周知,byte类型变量范围在 -128 - 127,因此在输出时会产生溢出,此时的输出就会成为-128.
2.当级别低的类型向级别高的类型进行转换时,是不需要强制转换的。例如
int i = 18; double d = i;
由于double的级别要比int高,此时可以直接输出,不用强制转换。
特别的是,布尔值是不能够进行转换的
二、运算符
1、这里介绍些比较难懂的运算符#### 1. a++、++a
int i = 1; int j = i++; System.out.println(j) System.out.println(i)
此时的输出为:1、2
这就说明a++这条指令是在 j = i++; 之后输出的。
不妨再看++a的表现如何
int i = 1; int j = ++i; System.out.println(i) System.out.println(j)
此时的输出为:2、2
这就说明a++这条指令是在 j = i++; 之前输出的。
因此,我们可以得出:
-
a++是在执行完这行代码之后,先给b赋值,再自增。
-
++a是在执行完这行代码之后,先自增,再给b赋值。
三、Scanner对象Java中我们可以通过Scannery类来获取用户的输入
基本语法:
Scanner scanner = new Scanner(System.in);
例如:
Scanner scanner = new Scanner(System.in); System.out.println("输入不带空格的数字:"); String str = scanner.next(); System.out.println("输出为"+str); scanner.close(); //重点:在使用i/o接口函数式,一定要记得在末尾关闭此函数。在执行完此段代码后,我们可以通过键盘输出整数,以其他字符结尾。
今日小计:那么,如何通过键盘输入带有其他字符呢?
大家快来动手试一下吧!
-



