走进Java王国----------第一章 从0到1的旅程

本文详细介绍了Java中的数据类型,包括基本数据类型(如int、char、float、double等)及其特点,如整型的溢出问题、浮点型的精度丢失以及布尔型的特殊性。还讲解了变量的作用域、命名规则和常量的使用,特别是变量的声明和初始化,以及字符串类型和转义字符的应用。此外,文章提到了进制转换和不同类型之间的转换规则。
摘要由CSDN通过智能技术生成

第二节 数据类型与常量和变量(介绍顺序自上至下,自左至右)

一、数据类型的分类

数据类型可总体分为两类,基本数据类型和引用数据类型

1、基本类型:

         分为字符型(char,2字节)

        布尔型(只有两个值,不能与int转换,真为true,假为false)

         数值型(共六个)可详细分为整型和浮点型,整型(byte<short<int<long,大小分别为1,2,4,8个字节),默认整型字面量为int;浮点型(float<double 4和8字节),默认字面量都是double

二、八大基本类型介绍及进制转换

1、整型变量:

        int:4字节,与操作系统和JVM版本都无关,int a = 10;声明变量,int型,初始化变量a的值为10,在Java中变量在定义时推荐赋予初始化值,因为在方法中定义的变量是局部变量,必须赋值后才能使用。

2、进制转换:

        1byte = 8 bit

         什么是bit?如10转换为二进制为1010,代表4bit,

        一般来说数据基本单位是byte(字节),byte与后续单位进制是1024, 8 bit就表示能写8个二进制数,最大为11111111,最多能表示2^8 - 1=255个二进制数,如何计算?从2^0乘1一直加到2^7乘1=255(不讨论符号位)

        区分:int类型求表示的范围(要考虑符号位),4字节,32个bit位,可表示为2^0-31次方,其中首位为符号位,所以从2^0乘1一直加到2^30乘1,结果就是2^31-1,可表示的范围就是从-2^31---2^31-1

3、关于包装类

        八大基本类型中,只有int和char类型的包装类拼写较为特殊,其他的包装类都是首字母大写即可,int----Integer char---Character

4、int类型的溢出问题

        public class TestDemo {
            public static void main(String[] args) {
                System.out.println(Integer.MAX_VALUE);
                System.out.println(Integer.MIN_VALUE);
                long a = Integer.MAX_VALUE;
                //整型溢出,a的结果变成最小值,向前进一从0111111……变为1000000,变成-2的31次方,需要更换一个更大的数据类型,所以需要long类型来进行接收
                a = a + 1;
                System.out.println(a);
               }
}

5、long类型和字面量:

long类型后面要加L

字面量:如200,整型字面量,默认为int类型;'a'字符字面量;90.5浮点数字面量,默认类型为double型

6、double类型

        8字节,双精度浮点数,Java中直接写出来的小数就是double类型,整型/整型会忽略小数部分导致精度丢失,可以改为1.0/2.0,两个浮点数相乘,由于计算机内部存储着一大堆0和1,浮点数在计算机内部实际上视通过整数模拟的,所以有时候会出现1.21000000000302这种情况,一般两种解决方法:(1)仍然使用double,但我们一般只看小数点后六位,剩下的小数忽略不计 (2) 使用BigDecimal来代替double的使用

7、其他基本数据类型:

float:4字节,单精度浮点数,要在末尾加F

char:字符型,2字节,使用''括起来的值都是字符字面量,默认类型是char

byte:1字节,一般用于文件和网络传输中[-128--127] 即[-2^7--2^7-1]

short:基本不用

布尔型:真为true,假为false,与0和1没有任何关系,不能和其他类型进行转换

        

        布尔类型需注意:(1)不能和int进行转换

        boolean a = true;
        a = 1;//编译时会提示,不兼容类型:int无法转换为boolean
        System.out.println(a);

​                                 (2)不能和String类进行转换,但可以使用String对象+boolean进行拼接输出

        boolean a = true;
        String ret = "运行结果是:"+ a;
        System.out.println(ret);//输出 运行结果是:true

三、字符串类型和转义字符:

1、字符串类型和转义字符:

        

        String name = "我的名字是:\"明哥\"";
        System.out.println(name);                
        //   \用于转义,上述代码输出结果为:我的名字是:"明哥" 

2、 \t:

                String test = "\t有制表符的字符串";
                System.out.println(test);

          \t是水平制表符,作用类似tab键

3、字符串的拼接作用:         

                int d = 10;
                int e = 20;
                System.out.println("d ="+ d +",e =" + e );

        字符串中加号有拼接作用,输出结果为d=10,e=20

四、变量和常量

1、变量和变量作用域:

         变量作用域:指变量起作用的区域在哪儿,就看变量在哪个大括号中定义的

​         变量:Java是强类型语言,定义一个变量的时候必须要规定好她的类型

2、变量的命名规则:

硬性规则:(1)必须由数字、字母、下划线组成

​                  (2)数字不能开头

​                  (3)变量名大小写是很敏感的

​                  (4)不能使用关键字作为变量名,关键字有哪些,可在word中看原图

​ 软性规则:见名知意,变量名最好不要用拼音,变量名词性为名词,变量命名使用小驼峰命名法:如String studentName = "明哥";

3、常量:

程序中有些属性,定义之后值无法修改,定义常量使用final关键字,示例如下:

                final int c = 10;
                System.out.println(c);

因为c被定义为常量,所以就无法修改值了,输出结果为10

 

                               

                        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值