一、自动化类型转换:在某种条件下,系统自动完成类型转换也称为隐含转换
① 两种类型兼容
② 目标类型大于源类型
③ 对于表达式,如果一个操作数为double型,则整个表达式可提升为double型
④ 示例:int i=10;double d=i;
 1 public class DataDemo2
 2 {
 3     public static void main(String [] aras){
 4         //自动类型转换(隐式转换)
 5         byte num1=10;
 6         int num2=num1;
 7         System.out.println(num2);
 8         long num3=num2;
 9         System.out.println(num3);
10         
11         float f=10.5f;
12         double d=f;
13         System.out.println(d);
14         
15         int num4=100;
16         float num5=num4;
17         System.out.println(d);
18         
19         char c1='a';
20         int num6=c1;//字符赋值个整型变量
21         System.out.println(c1);
22         System.out.println(num6);
23         System.out.println(c1+10);
24     }
25 }

二、强制类型转换:在一定条件下,程序员手动完成类型转换
① 两种类型兼容
② 一般目标类型小于源类型
③ ☆强制类型转换会丢失精度
④ 示例:double d=100;int i=(int)d;
 1 public class DataDemo2
 2 {
 3     public static void main(String [] aras){
 4         //强制类型转换(显式转换)
 5         int num7=10;
 6         short num8=(short)num7;
 7         System.out.println(num8);
 8         
 9         float num9=(float)10.25;
10         System.out.println(num9);
11         
12         int num10=65;
13         char num11=(char)num10;
14         System.out.println(num11);
15         
16         int num12=10;
17         double num13=10.6;
18         double res=num12+num13;
19         System.out.println(res);        
20     }
21 }

总结 byte < short(char) < int < long < float < double
三、位运算符


                    
                

                
            
        
浙公网安备 33010602011771号