JAVA基础语法02

JAVA基础语法02

类型转换

  • 由于java是强类型语言,所以在进行有些运算的时候需要用到类型转换
  • 运算中,不同类型的数据先转化为同一类型,再进行运算
低------------------------------------------->高(容量)
byte,short,char-->int-->long-->float-->double
  • 小数的优先级大于整数
  • 转换两种类型
    • 强制类型转换 :(类型)变量名,高--->低
    • 自动类型转换:不用写,自动,低--->高
  int i = 128;
        byte b = (byte)i; //内存溢出,byte最大127 (类型)变量名-->表示强制转换

        System.out.println(i);
        System.out.println(b);

        /*
        注意点:
        1.不能对布尔值进行转换
        2.不能把对象类型转换为不相干的类型
        3.高容量转换为低容量的时候,强制转换,反之不用
        4.转换的时候可能存在内存溢出,或者精度问题
         */

        System.out.println("================================");
        System.out.println((int)23.7); //23
        System.out.println((int)-45.89f); //-45 精度丢失

        System.out.println("================================");
        char c = 'a'; //定义字符c为'a'
        int f = c+1; //定义数字f为c+1
        System.out.println(f);
        System.out.println((char)f); //强制转换回去


        System.out.println("================================");
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;
        int years = 20;
        int total = money*years; //结果为负数,溢出了
        long total2 = money*years; //默认是int转long类型,但是int转换之前已经溢出错误了

        long total3 = money*((long)years);
        long total4 = ((long)money)*years; //在转换之前把int的一个数转成long即可正确输出
        System.out.println(total);
        System.out.println(total2);
        System.out.println(total3);
        System.out.println(total4);

变量

  • 可以变化的量
  • java需要声明每个变量的类型
type varName [=value] [{,varName[=value]}];
//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量(但不推荐,太乱)
  • 注意事项
    • 每个变量都有类型,类型可以是基本,也可以是引用
    • 变量名必须是合法的标识符
    • 变量声明是一条完整的语句,因此每个变量都必须以分号结束
 //int a,b,c
        int a=1,b=2,c=3;//尽量写成三行的,这里为了注释先写一行,要考虑程序可读性
        String name = "zhiyuan";
        char x = 'X';
        double pi = 3.14;

变量作用域

  • 类变量
  • 实例变量
  • 局部变量
public class Variable{
    static int allClicks=0; //类变量
    String str="Hello World"; //实例变量
    
    public void method(){
        int i =0; //局部变量
    }
  
}
public class Demo05 {
    //属性:变量

    //类变量 static
    static double salary = 2500;

    //实例变量:从属于对象;从属于这个类,如果不自行初始化,这个类型则是默认值 0,0.0
    //布尔值默认是false
    //除了基本类型其余的默认值都是null
    String name;
    static int age;//这里需要在int age;前面加上static来把age定义成静态变量

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

        //局部变量:必须声明和初始化值,有效只在于这个中括号里
        int i = 10;
        System.out.println(i);

        //变量类型 变量类型 = new Demo05();
        Demo05 demo05 = new Demo05();  //new 类 加.var或crtl+回车可以生成
        System.out.println(Demo05.age);
        System.out.println(demo05.name);


        //类变量 static
        System.out.println(salary);
    }

    //其他方法
    public void add(){

常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。
  • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
//final 常量=值;
final double PI=3.14
//常量名一般使用大写字符
public class Demo06 {
    //final定义常量
    static final double PI = 3.14; //static和final互换位置是可以的
    //修饰符不存在先后顺序
    //static修饰的就是静态的  静态的 都是类的 这么记就对了

    public static void main(String[] args) {
        System.out.println(PI);

    }
}

变量的命名规范

  • 所以的变量,方法,类名:见名知意
  • 类成员变量:首字母小写和驼峰原则,例如:lastName
  • 局部变量命名:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名,首字母小写和驼峰原则:run(),runRun()
posted @ 2022-03-02 11:30  Joe_ximu  阅读(27)  评论(0)    收藏  举报