java变量类型的划分


前言

Java定义的变量可以按照两种方式进行划分。1.按照数据类型来划分 2.按照声明的位置来划分。


一、变量按照数据类型划分

1.基本数据类型

整型:byte(1字节) / short (2字节)/ int (4字节)/ long(8字节)
浮点型:float (4字节)/ double(8字节)
字符型:char(1字符=2字节)
布尔型:boolean
class VariableTest1 {
    public static void main(String[] args) {
        //1.整型:byte(1个字节) / short(2个字节) / int(4个字节) / long(8个字节)
        //byte范围:-128 ~ 127
        byte b1 = 12;
        byte b2 = -128;
        //b2 = 128; //编译不通过,超过了范围
        System.out.println(b1);
        System.out.println(b2);
        
        // 声明long型变量,必须以"l"或"L"结尾
        // 通常定义整形变量时,使用int型
        short s1 =128;
        int i1 = 1234;
        long l1 = 4346446342L;
        System.out.println(l1);

        //2.·浮点型:float(4字节) / double(8字节)
        // 浮点型,表示带小数点的数值
        // float表示的数值范围比long还大

        double d1 = 123.3;
        System.out.println(d1 + 1);
        // 定义float类型变量时,变量要以“f”或者“F”结尾
        float f1 = 12.3f;
        System.out.println(f1);
        //通常,定义浮点型变量时,使用double型

        //3.字符型:char(1字符=2个字节)
        // 定义char型变量,使用一对单引号,单引号内只能写一个字符
        char c1 = 'a';
        //编译不通过
        //c1 = 'ab';
        System.out.println(c1);

        char c2 = '1';
        char c3 = '中';
        char c4 = '^';
        System.out.println(c2);
        System.out.println(c3);
        System.out.println(c4);

        //表示方式:1.声明一个字符 2.转义字符 3.直接使用 Unicode 值表示字符型常量
        char c5 = '\n'; //换行符
        c5 = '\t'; //制表符
        System.out.print("hello" + c5);
        System.out.println("world");

        char c6 = '\u0043';
        System.out.println(c6);
        
        //4.布尔型:boolean
        // 只能取两个值之一:true,false
        // 常常在条件判断,循环结构中使用
        boolean bb1 = true;
        System.out.println(bb1);

        boolean isMarried = true;
        if(isMarried){
            System.out.println("很遗憾,你就不能参加\"单身\"party了!");
        }else{
            System.out.println("你可以多谈谈女朋友!");
        }

    }
}

2.引用数据类型

类(class)
接口(iterface)
数组(array)

二、变量按照声明的位置划分

1.成员变量

成员变量所在位置:在类中,方法外
成员变量是指在类体的变量部分中定义的变量,也称为属性。

2.局部变量

局部变量所在位置:在方法的方法体内定义,方法的形参等。

public class Person{
	public int age;
	public String name;// age,name都是成员变量
	public void tell(int age, String name){
		int a = age + 1;//age,name,a都是局部变量
		System.out.println("姓名:"+ name + " 年龄:"+ age);
	}
}

3.成员变量和局部变量之间的区别

1.从语法形式上,成员变量是属于类的,而局部变量是在方法中定义的变量或是方法的参数;成员变量可以被public,private,static等修饰符所修饰,而局部变量不能被访问控制修饰符及static所修饰;但是,成员变量和局部变量都能被final所修饰;

2.定义的位置不同成员变量:在方法的外部,直接写在类当中。局部变量:方法的内部。

3.作用的范围不同成员变量:整个类可以通用。局部变量:只有在方法中才可以使用,出了方法就不可以使用。

4.默认值不一样成员变量:如果没有进行赋值,会有默认值,规则和数组一样。局部变量:没默认值,需要赋值才可以使用。

5.内存位置不一样成员变量:位于堆当中。局部变量:位于栈当中。

6.生命周期不同成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失。局部变量:随着方法进栈而诞生,随着方法出栈而消失。相对于成员变量,一般来说局部变量存在的时间更短一点。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值