java运算注意事项

Posted hehe哒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java运算注意事项相关的知识,希望对你有一定的参考价值。

/*
对于byte、short、char。插入三种类型来说,如果右侧固执的数值没有超过范围,那么java编译器就会自动隐含地位我们
补上一个(byte) ,(short),(char)

1、如果没有超过左侧的范围,编译器补上强转
2、如果超过了左侧范围,那么直接编译报错
*/

public class Demo02Notice{
    public static void main(String[] args){
        //右侧确实是一个int数字,但是没有超过左侧的范围,就是正确的
        // int————> byte 不是自动转换类型
        byte num1 = 30; // (byte)30;  右侧没有超过范围
        System.out.println(num1); //30
        
        //byte num2 = 128  右侧超过范围
        
        
        // int ————> char 没有超过范围
        //编译器将自动补上一个隐含的(char)
        char zifu = 65;
        System.out.println(zifu);//A
    }
}


/*
在变量进行赋值的时候,如果右侧的表达式当中的全部是常量,没有任何变量‘
那么编译器java将会直接将若干个常量表达式计算得到结果;
short result = 5 + 8;  // 等号右边的全是常量,没有任何边变量参与运算
编译之后。得到的.class字节码文件当中相当于【直接就是】:short result = 13;
右侧的常量结果数值没有超过左侧范围,所以正确————这成为“编译器的常量优化”

但是,一旦表达式当中有变量参与,那么就不能进行这种优化了。
*/
public class Demo02Notice2{
    public static void main(String[] args){
        short num1 = 10; // 正确写法,右侧没有超过左侧的范围
        
        short a = 5;
        short b = 6;
        // short + short ----> int + int ----> int
        //short result = a+b; // 错误写法!左侧主要是int类型
        
        
        // 右侧不用变量,而是采用常量,而且只有两个常量
        short result = 5 + 8;
        System.out.println(result);
        
        
        
    }
    
}

 

以上是关于java运算注意事项的主要内容,如果未能解决你的问题,请参考以下文章

Java基础知识 自增自减运算符

java笔记2之算术运算符

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

22.java方法的定义

JSP 基础语法