码迷,mamicode.com
首页 > 编程语言 > 详细

Java连载15-boolean类型&类型转换&++运算符

时间:2019-08-13 00:29:39      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:class   main   rgs   chat   byte   最大的   大数据学习   优先级   范围   

一、boolean类型

1.说明:

(1)在java语言中,boolean类型只有两个值:true、false,没有其他的值。在C语言中,是有0代表false和1代表true的

(2)在底层存储的时候boolean类型占用1个字节,因为实际存储的时候false底层是0,true是1

(3)布尔类型在实际开发过程中是非常重要的,经常使用在逻辑运算和条件控制语句中。

 

public class d15_{

  public static void main(String[] args){

    boolean i1 = true;

    if(i1){

      System.out.println("我被正确数出了");

    }else{

      System.out.println("我被错误输出了");

    }

  }

}

 

技术图片

二、数据类型之间的类型转换

1.转换规则

(1)八种基本数据类型之中除了boolean类型之外其他七种可以互相转换

(2)小容量向大容量转换。称为自动转换类型。容量从大到小排序:

byte<short=char<int<long<float<double

注意:任何浮点类型不管占用多少字符,都比整数类型容量大。char和short可以表示的种类数量相同,但是char可以取到更大的正整数。

(3)大容量向小容量转换,称为强制类型转换,需要加上强制类型转换符,程序才能编译通过,但是运行阶段可能会损失精度,所以谨慎使用

(4)当整数字面值没有超出byte,short,chat的取值范围时,可以直接赋值给byte,short,char

(5)byte,short,char混合运算的时候,各自先转换为int类型再做运算

(6)多种数据类型运算的时候,先转换为容量最大的那种类型再进行运算。

三、练习

注意?:我们不能把最后得到的结果在程序之前考虑进去,我们程序是需要先编译在运行,我们算出的结果是运行后的,我们要先考虑编译阶段的语法语义的正确性?。

 

    byte a = 10;//编译通过,因为没有超出byte的范围

    int b = 3;

    //byte c = a/b;//编译不通过,因为得到的值为int类型,必须强制转换才行,修改方式如下

    byte c = (byte)(a/b);

 

四、运算符

1.算术运算符(+、-、*、/、%(求余数或称为取模)、++(自加1)、--(自减1))

2.?注意:一个表达式中有多个运算符,运算符有优先级,?不确定的加上小括号,优先级得到提升,没有必要去记忆运算符的优先级

3.关于++运算符(以下以++为例,那么--也是这样就不错重复讲解了)

?小结:++运算符可以出现在变量前面,也可以出现在变量的后面,无论是变量的前面还是变量的后面,只要++运算符一结束,该变量的值就会自动加1

 

 

   int k =10;

    k ++;

    System.out.println(k);

    ++ k;

    System.out.println(k);

   

技术图片

下面我们对他们之间的区别进行讨论

(1)对于++出现变量的后面

 

 

    int a1 = 10;

    int a2 = a1 ++;

    System.out.println(a1);

    System.out.println(a2);

 

技术图片

从上面的例子可以看出:规则:先做赋值运算,再对变量中保存的值进行加1

(2)对于++出现再变量的前面

 

    int a1 = 10;

    int a2 = ++a1;

    System.out.println(a1);

    System.out.println(a2);

    ?

技术图片

规则:先进行自加1运算,然后进行赋值操作。

五、源码:

d15_type_transform_and_arithmetic_operator.java

地址:https://github.com/ruigege66/Java/blob/master/d15_type_transform_and_arithmetic_operator.java?

2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,后台回复”礼包“,获取大数据学习资料

 技术图片

 

Java连载15-boolean类型&类型转换&++运算符

标签:class   main   rgs   chat   byte   最大的   大数据学习   优先级   范围   

原文地址:https://www.cnblogs.com/ruigege0000/p/11337428.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!