java数据类型及其转换

本文介绍了Java中的基本数据类型(如int、byte、float等)及其特点,包括字节数和范围,并探讨了强类型语言的规则。同时,讲解了如何进行不同类型之间的转换,包括自动转换和强制转换,以及在实际编程中的精度问题和内存溢出示例。
摘要由CSDN通过智能技术生成

java数据类型及其转换

基本数据类型

  1. 强语言类型:变量要严格符合规定,先定义后才能使用

    • 基本数据类型

    • 1byte=8bit

    • 1024B=1KB

    • 1024KB=1M

    • 1024M=1G

    • int的长度:-2^31 到 2^31-1

      public class Demo02 {
          public static void main(String[] args) {
              //八大基本数据类型
      
              //整数 bit(计算机内部数据存储最小单位)
              int n1 = 10;//最常用,4字节,1字节=8bit
              byte n2 = 10;//1字节,范围:-128到127
              short n3 = 10;//2字节
              long n4 = 10L;//8字节,后面加L方便辨别
      
              //浮点
              double n5 = 3.1415926;//8字节
              float n6 = 3.14F;//4字节,后面加F
      
              //字符
              char n7 = '中';//2字节,里面只能有一个值
              //字符串,String不是关键字是类
              //string name = "中国";
      
              //布尔值:对错
              boolean n8 = true;//1bit,只有1位,只能是true或false
              boolean n9 = false;
          }
      }
      
      
      • 引用数据类型
      • 类(class)
      • 接口(interface)
      • 数组(arr)
  2. 弱语言类型:JavaScrip

    转换

    1. byte–>short>char–>int–>long–>float–>double
    • 强制转换(由小到大)
package com.sund.base;

public class Demo04 {
    public static void main(String[] args) {
        int i = 128;//(21亿)
        byte s = (byte)i;//强转  内存溢出(byte-128到127)
        float d = i;//自动转换
        System.out.println(s);
        System.out.println(d);
        System.out.println("=====================");
        //精度问题
        System.out.println((int)3.14);
        System.out.println((int)3.66F);
        //jdk7新特性,数字可以用_隔开
        System.out.println("================");
        int money = 10_0000_0000;
        int years = 30;
        int total = money*years;
        long total2 = money*years;
        System.out.println(total);//-64771072  内存溢出
        System.out.println(total2);//-64771072  默认是int,转换之前已经存在问题
        long total3 = money*((long)years);
        System.out.println(total3);
    }


}
  • 自动转换:由大到小
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值