Java中的数据类型、强制转换

        这一篇文章就讲一讲Java中的数据类型。

1、数据类型。

        和其他语言一样,Java中的数据也是有着不同的类型。int、char、double、float、boolean、long、short、byte等八种基本类型。

        首先说一下,数据类型中的自动类型转换。

        (1)、自动类型转换

    byte->short,char—> int —> long—> float —> double 

          当前面的阶层转换为后面的阶层数据是不会丢失的,但是后面的大阶层转换为小的阶层数据可能会发生变化。

        (2)、强制转换

        但是当我们用到了类型转换的时候,由于大的类型是不会转换成小的类型的,所以我们就要用到强制类型转换。

        

public class type{

        public static void main(String[] args){

                    double a=12.34;
                    int b=(int)a;
                    System.out.println(a);
                    System.out.println(b);
   }
}

运行结果便是12.34  12

因为b是整型的变量,用了强制类型转换由double变为int,只取整数部分所以是12

public class type{

        public static void main(String[] args){

                    double a=12.34;
                    int c=a;
                    System.out.println(a);
                    System.out.println(c);
   }
}

 这就显示了从高类型转换到底的类型会有数据丢失的问题,代码也会报错。

public class type{

        public static void main(String[] args){

                    int a=12;
                    double c=a;
                    System.out.println(a);
                    System.out.println(c);
   }
}

 但是从低类型到高类型的自动转换就没有问题。

2、变量的默认值

         

3、默认值的赋予

但是只有将变量设为类变量时才会在编译时初始化为默认值。如果对变量进行了初始化,则变量的值为赋予的值。

//代码一
public  class type{

    public static void main(String[] args) {
        int i;
        System.out.println(i);
    }
}
//代码二
public  class type{

      static int i;
    public static void main(String[] args) {
        
        System.out.println(i);
    }
}

代码一,编译会发生错误,提示有未初始化的变量i;所以在方法里要初始化自己的变量。

代码二,编译成功,运行后输出0;

代码二中的 i 便是类变量。

在一个方法内是不能将一个变量定义为static的,所以static都是类变量。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值