数据类型转换,运算符,方法入门

数据类型转换:

原因:java程序中要求参与运算的数据的类型必须一致,如果数据类型不一致,则会发生数据类型的转换;

分类:自动类型转换和强制类型转换

自动转换:将取值范围小的类型  自动提升为 取值范围大的类型;

                  转换规则,  byte--->short--->char--->int--->long--->float--->double

强制类型个转换:将取值范围大的类型  强制转换成 取值范围小的类型;

ps : 自动类型转换是java自动执行的,而强制类型转换需我们自己手动完成: 数据类型  变量名 = (数据类型) 被转数据值;

       浮点转成整数,直接去掉小数点,可能造成数据精度损失; int  强制转成 short 砍掉 2个字节,可能造成数据丢失;

运算符:

赋值运算符 :   +=,-=,*=,/=,%=    可以自动进行强制类型转换  例:

package yanzheng;

public class Test {
    public static void main(String[] args) {
        
        byte b=3;
        b=b+3;  //编译报错,这种写法需要手写进行强制类型转换  b=b+(int)3 ;
        b+=3;   //这种写法会自动进行强制类型转换
        System.out.println("b:"+b);
    }
}

常量和变量的运算:

扫描二维码关注公众号,回复: 2289287 查看本文章
package yanzheng;

public class Test {
    public static void main(String[] args) {

        byte b1= 1+2;  /*按理来说,1和2为int类型,相加结果也是int类型,
                        赋给b的时候应该进行强制类型转换,但是编译器没报错,
                        原因是:编译器会进行检查,如果 右边的计算结果没有超过
                        左边的取值范围,则自动转换为 byte
                        */
        byte b2=4+3;
        byte b =b1+b2;  /* 编译会报错,因为 b1,b2 参与运算时,会提升为 int ,但是
                           由于 b1,b2 为变量,相加的结果是 变化的,编译器不知道结果
                           是否超过 左边的取值范围,因此会报错。
                        */
    }
}

方法:

其实是一种封装的体现,将一个功能抽取出来,单独定义在一个大括号内,形成一个单独的功能,当我们需要这个功能的时候,就可以去调用,即实现了代码的复用性,也解决了代码冗余的现象。

ps : 方法的返回值只能是一个, return  语句的作用是:1,用来返回方法的返回值, 2. 结束该方法。

猜你喜欢

转载自blog.csdn.net/yuwotongle1018/article/details/81144149