Java修行之变量和数据类型

一、变量

        1.什么是变量。

                变量是指在程序的执行过程中,其值可以发生改变的量叫变量

        2.定义变量的格式。

                第一种是 数据类型 变量名 = 初始化值;

                第二种是 数据类型 变量名;
                               变量名 = 初始化值;

        3.定义变量时的注意事项。

                ①、作用域:变量在同一个大括号内有效,出了大括号外无效。

                ②、相同的作用域中不能定义两个同名变量。

                ③、没有初始化值不能直接使用,在使用之前赋值即可

                ④、不建议在一行上定义多个变量,强制定义一个变量为一行。

二、数据类型

        1.基本数据类型

                

整数类型                   占用字节数        可表示的范围
    byte                     1           -2^7 ~ 2^7-1
    short                    2           -2^15 ~ 2^15-1
    int                      4           -2^31 ~ 2^31-1
    long                     8           -2^63 ~ 2^63-1
浮点类型
    float                    4           -3.403*10^38 ~ 3.403*10^38
    double                   8           -1.798*10^308 ~ 1.798*10^308
字符型
    char                     2
布尔型
    boolean                  1

        2.引用数据类型(后补)

        3.关于数据类型的注意事项

                ①,Boolean类型的值不能赋值给其他数据类型;默认转换是byte、short、char-int--long-float-double;byte、short和char互相转换时,他们参与运算首先转换成int型。

                强制转换类型:目标数据类型  目标变量名 = (目标数据类型) 要进行赋值变量。[ps:不建议大量使用强制类型转换,可能会损失精度。]

                ②,关于字符型的运算:字符参与算术运算时,会将字符转换为ascll码表中的值参与运算。建议记住的几个ASCLL码,‘0’=48  ‘A’=65 ‘a’=97。

package com.study.gss.day03;

/*
        System.out.println(‘a’);
        System.out.println(‘a’+1);

        代码格式化的快捷键:ctrl+alt+L

        ASCII码表必须记住的三个字符对应的值:
            '0'  48
            'A'  65
            'a'  97

 */
public class DataTypeDemo6 {
    public static void main(String[] args) {
        System.out.println('a');
        //字符参与算术运算的时候,会将字符转化成对应的ASCII码表中的值参与运算
        System.out.println('c' + 1); // 100
    }
}

        ③,+号的用法。

                

package com.study.gss.day03;

/*
        System.out.println(“hello”+’a’+1);
        System.out.println(‘a’+1+”hello”);
        System.out.println(“5+5=”+5+5);
        System.out.println(5+5+”=5+5”);

        +号的用法:
            1、当加号两边都是数字或者是数字和字符的时候,这时候的+号做的是加法运算
            2、当加号两边其中是字符串的时候,做的是字符串拼接,拼接后是一个新的字符串
            3、字符串与任何数值做加法,做的是字符串拼接,拼接后是一个新的字符串

 */
public class DataTypeDemo7 {
    public static void main(String[] args) {
        System.out.println("hello"+'a'+1); // helloa1
        System.out.println('a'+1+"hello"); // 98hello
        System.out.println("5+5="+5+5); // 5+5=55
        System.out.println(5+5+"=5+5"); // 10=5+5

        //System.out.println("5+5="+5+5); // 5+5=55 我就想先计算后面的5+5怎么办?
        //小括号可以改变运算的顺序优先级
        System.out.println("5+5="+(5+5));
    }
}

question1。(byte、short和char他们在进行运算时,会自动转换为int类型

/*
            byte b1=3,b2=4,b;
            b=b1+b2;
            b=3+4;
            哪句是编译失败的呢?为什么呢?

      变量相加和常量相加不一样:
        1、变量相加首先会提升数据类型,然后再相加赋值,如果接收的数据类型范围小于计算结果后的数据类型范围,报错,不能赋值
        2、常量相加,会先进行计算,计算完后看看在不在接收的数据类型范围内,如果在,直接赋值,如果不在,报错。

 */
public class DataTypeDemo4 {
    public static void main(String[] args) {
//        int a = 3;
//        byte b = 4;
//        int c1 = a + b;
//
//        byte c2 = (byte)(a + b);
//        System.out.println(c2);

        byte b1=3,b2=4,b;
//        b=b1+b2;
        b=(byte)(b1+b2);
        b=3+4;

    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值