1.变量使用:Java中默认整形为int,浮点类型为double。因此要注意加后缀。如图1.1:
如果不加后缀L,虽然定义是long,但程序默认是int,会报错。
同理如图1.2:
如果不加上F,运行会提示图1.3:
2.整形相除只能得到整数,如果想得到小数,比如有浮点数参与运算
int a = 6; int b = 4; System.out.println(a/b);
结果为1
3.i+=5与i=i+5的区别
在i为int形时两者没有任何区别,但当int为shor类型时候i=i+5会报错,因为5是int形式,但是i+=5不会报错,因此i+=5这句程序中隐含了强制类型转换的操作。所以尽量就用i+=5这样的写法。除了有+之外还有-,*,/,%
3. java中想写死循环应该是while(true),写while(1)会报错int无法转换为布尔值。
JAVA基础课 JAVA基础课:01-
2、 掌握 Java 基本语法
3、 掌握条件语句
4、 掌握循环语句
(1)自动转换
箭头方向都是可以由程序自动转换的,注意char与short占据相同的2字节,但是不能相互自动转换。 个人:就是根据bit数由小到大转换。char字节数=short=2。如果反着转换,如 一个byte形的a和一个char形的b,写 a = b,则提示与图1.3类似。
(2)强制类型转换
范例如下代码块所示
public class cons{ public static void main(String[] args){ int k; k = (int)88.8;//强制转换格式 System.out.println(k); } }
最终程序输出k=88;有损失。
(1)加法:在加法运算中short+int答案为int形。即会自动提升答案的数据类型。
short k; k = 6; char c ='a'; short b = c + k; 运行提示:错误: 不兼容的类型: 从int转换到short可能会有损失 short b = c + k; 表明char+ short最后结果为int形
与字符不同的是:字符串的相加就是将字符串拼接起来。如图3.4 char+
第一个红点输出为itheima666,需要注意的是:第二个红点输出为100年黑马,因为从左到右执行时,遇到的先是1+99,没有遇到字符串,所以会先执行加的操作,再遇到+“年黑马”,此时执行连接操作。 同时区别“a” != ‘a’,一个是字符串,一个是字符,在加法运算时表现不同,不可以相提并论
从以后开始,为方便复习查找,序号保持与视频序号一致
例如:
`int i,j,k; i=10; j=i++; //运行结果j=10 i=10; k=++i; //运行结果k=11
(注意输出为布尔值而不是1或0)。如果==写成了=:
前两行程序输出为true/false,最后一行输出为一个数。
注意异或的符号
&&和&的区别如下:
&,&&:(与,短路与):一样的地方就是二者执行最后的结果是一样的,但是执行的过程有区别,
对于&:无论&左边是否为false,他都会继续检验右边的boolean值。
对于&&:只要检测到左边Boolean值为false时,就会直接判断结果,不会在检验右边的值(因为"与"有一个false最后结果就是false了)
所以&&的执行效率更高,所以一般都是使用&&.
|与||之间也是同样的道理,|:无论左边是否为ture,都会检验右边 ,||:则不会。|| 的执行效率会更高
不仅限于>,其他关系运算符也可以使用。
对26的应用
对26的应用
流程:导包,创建对象,输入数据。如果要多次录入不用重新创建对象,多次写接受数据的语句即可。如:
import java.util.Scaner; public class ScannerTest{ public static void main(String[] args){ Scanner kk = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); } }
29的应用
与c相同
与c相同
奇偶数判断
与c相同
在程序设计时必须进行数据测试:正确数据,边界数据,错误数据;
与c语言类似,最后的break的括号表示可加可不加break。新学的的是:default。switch小括号后也有大括号。
注意字符串也可以进行switch的比较
在进行switch结构判断的,新学了一种case穿透的写法,即故意不写break,利用switch特性简化程序。如:
与c相同
新学:对任意数字的制定位置上的数值如何求:如123456789怎么取出5。
两种方式:①先除以10000得到12345,在对10取余即可
②先对100000取余,得到56789,然后除以10000即可得到5.
综上方法②过于麻烦,因此固定取数先除以10的n次幂使得要取的数在最后一位,再对10取余即可,先除后取余。
与c相同。
while循环可以与for循环互换,如果不知道循环次数,那么使用while循环更合适
与c相同。
新学的:continue跳过此次循环剩下部分。break直接终止循环/跳出循环。循环:for,while,do…while。if不是循环。
步骤:与录入数据相似,都是:导包,创建对象,获取数据。
随机数默认0-x,当想取得的范围是5-15时,使用 n = 变量名.nextInt(10)+5。
import java.util.Random; public class cons{ public static void main(String[] args){ Random kk = new Random(); double n = kk.nextInt(50); System.out.println(n); } }
注意:① n = kk.nextInt(50); 此处必须是整形,写50.3会报错。
② 与Scanner类似,如果要重复获取随机数,只需要重复写n = kk.nextInt(50);即可,不用重新创建对象