JAVA入门——03基本类型

本文详细介绍了Java中的基本数据类型,包括整型、浮点型、字符型和布尔型,以及它们之间的转换规则。特别强调了自动类型转换和强制类型转换的条件与可能产生的问题。还探讨了字符串与基本数据类型的相互转换,并提到了字符编码如ASCII和Unicode。最后,讨论了数据溢出和精度丢失现象在不同类型转换中的表现。
摘要由CSDN通过智能技术生成

变量

         int a = 10;
        double score = 99.5;
        char c = '男';
        String name = "jack";

+号使用

        左右两边都是数值型,做加法运算

        有一边是字符串,做拼接运算

        运算顺序:从左到右

整型

        byte                1字节(8bit) 2**-7 - 2**7-1  存贮形式(3 = 00000011,第一个0表示正负数)

                                字节(基本单位)

                                bit(最小单位)

        short                2

        int                     4

        long                  8        long后面要加L或者l(long a = 2001L)

浮点型

        单精度float                    4字节       (声明float 后面要加 F 或 f

        双精度double                8

        存放形式:浮点数 = 符号位 + 指数位 + 尾数位

        尾数部分可能丢失,造成精度丢失(小数都是近似值)

        8.1 / 3 = 2.999999999999997 != 3

字符类型

        单个字符

        char a = 'a';

        char b = 97;        //ASCII表

        char c = '\t';

        char d = '韩';

        (int)a = 97

        (必须用‘’,“”是字符串

            char类型是可以运算的,是unicode值)

布尔类型

        1个字节

        boolean a = true;

        (不可以用 0 和 非0 值代替 flase 和 true)

自动类型转换

 

        

 

        

 

        输出:97        80.0

        1.当多种数据运算的时候,将所有的数据转换成容量最大的数据类型。

        2.当大精度转换成小精度时会报错。

        3.char 和 (byte , short)不能相互转换  (byte不能转成char,short不能转成char)

        4.把具体数值转给byte时,会自动判断是不是在范围内,在的话可以转换。

        5.byte,char,short 之间可以运算,他们会自动转换成int类型(只要出现byte,char,short,计算都会转换成int)

        6.bool类型不参与类型转换

强制类型转换

        会造成精度损失或数据溢出

        int a = (int)1.9;        //a = 1

        byte b = 2000;        //b = -48

         

         

 

         练习:

        

        答案:

         

基本数据类型和String的转换

        转String:加号连接

        

        String转:调库

        

        对String转char:

        实际上是取String的第一个字符

        或者调库:

                

         取出s5字符串中的第2个字符

 编码

        ASCII(128字符)

        Unicode(字母和汉字统一占用两个字节)

        utf-8(字母用1个字节,汉字用3个字节)

        

API

        中文文档:https://www.matools.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值