数据类型与变量

数据类型转换

优先级:

byte < short, char <int < long < float < double

1、强制类型转换:由高到低——(类型)变量名

2、自动转换:由低到高

Java数据类型(强类型语言,所有语言必须先定义).xmind

note:

  • 不能对布尔值转换
  • 不能把对象类型转换为不相干类型
  • 在把大容量类型转换为低容量时——>强制转换,
  • 转换时可能出现内存溢出
  • 操作数据过大时注意内存溢出
int money=1000000000;
int years=20;
int total=money*years;//计算时内存已经溢出
System.out.println(total);//-1474836480
  //解决?
long total1=total;
System.out.println(total1);//-1474836480//此时默认的还是int型数据所以还是不对
//应该在计算前就对数据进行转换
System.out.println(years*(long)money);//20000000000

变量

java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型,作用域;

note:

每个变量都有类型,可以是数据类型也可以是引用类型,在使用前必须声明!

变量名必须合法;必须要加 ’ ;‘

type varname=value;//数据类型 变量名 = 值;

1、局部变量

在方法里的变量(写了就能用)

必须初始化!!!

    public static void main(String[] args) {//main方法

        //局部变量;必须声明和初始化 (写了就能用)
        int i=3;
    }

2、实例变量

在类里,方法之外,从属于对象

(可以不用初始化)

  • 不初始化就变为该类型的默认值
  • int--0; float--0.0;
  • 布尔值--false,除了基本类型(8个)有对应的默认值外,其余默认值都是null
public class Demo{
    //实例变量  
    String name;
    int age;

    // note:在类里面不可实现输出
    
    public static void main(String[] args) {//main方法

        //变量类型 变量名 = new demo
        Demo demo = new Demo();//实例变量取出
        //new demo();
        System.out.println(demo.age);//调用 输出0


    }

}

3、类变量

加关键字 static

(ta也从属于类) ,可直接引用!!!调用时比new 方便

与类 “同生共死”

public class Demo5{
    //类变量
    static double salary=2500;//int型自动转换为double型

    public static void main(String[] args) {//main方法

        System.out.println(salary);

    }

}

4、常量变量

初始化后不可改动!!!

关键字 final

final  变量类型 常量名 = 值;
// final double Pai=3.14;
public class Demo{

    static final double pai=3.14;
    final static double pai1=3.14;
    // 变量前的 修饰符 不区分先后顺序

    public static void main(String[] args) {//main方法
        System.out.println(pai);
        System.out.println(pai1);
    }

}
posted @ 2021-11-28 00:33  来日可追  阅读(32)  评论(0编辑  收藏  举报