Java基础复习(DayTwo):变量常量(枚举)与基本数据类型转化

变量与常量

变量

变量是指值不变的值

变量名必须是一个以字母开头并由字母或者数字构成的序列(但在这个字母和数字的范围是比一般的广,不仅仅是一般字母,还有在某种语言中表示字母的任何Unicode字符),由以下几条规则

  • 必须以字母、下划线、或者美元符号开头
    1. 中文也可以作为命令开头且可以通过编译
  • 除开头外,后面的部分可以有字母、下划线、美元符号以及数字组成
    1. 也可以是中文,但前提是前面的也是中文
  • 变量名不可以与关键字冲突
  • 变量名大小写敏感
  • 在Java9中,单下划线不能作为变量名
    在这里插入图片描述

常量

关键字final修饰一个常量,表示这个值只会被赋值一次,一旦被赋值了,就不能被更改了,常量名建议使用全大写

类常量

因为常量是必须要赋值的,所以在类中不可以只是单纯定义

第一种方式,使用构造方法进行赋值(使用Setter方法不能给常量赋值,因为可能仍然会产生常量没有赋值的情况)
在这里插入图片描述
第二种方式,就是直接给常量赋值
在这里插入图片描述
第二种方式,还可以通过加上static关键字,让它可以在静态方法里面使用(因为class文件加载的时候,优先载入静态代码块,然后到构造方法,然后到其他方法)
在这里插入图片描述
这里要注意的一点是,const是java的保留字,但Java是没有使用的,定义常量依然使用的是final,如果在idea中使用const,会变成下面这样子
在这里插入图片描述
敲下回车后,会生成一个int类型的私有静态常量,而且值是随机值
在这里插入图片描述

枚举类型

枚举类型针对有限个命名的常量,通常用来储存常量的,但要记住,它也是一个对象,它存储的常量都是自己类型的

举个栗子

/**
 * @Author: Ember
 * @Date: 2021/5/13 14:06
 * @Description:
 */
public enum Size {
    SMALL(1),
    MEDIUM(2),
    BIG(3)
    ;
    private int size;

    Size(int size) {
        this.size = size;
    }

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }
}

Size的构造方法一定是private,但可以省略,但不可以为protected或者public或者缺省(虽然上面看起来是缺省,但其实是private),所以枚举类型不可以被继承(不提供对外的构造方法怎么继承?),枚举类型里面的构造方法单纯是给自己去创建枚举常量的,也不可以主动去调用new一个枚举类型,这样就限制了,该枚举类型的所有枚举对象都在枚举类里面提前定义好(所有的枚举类型都是Enum类的子类,继承了这个类的很多方法)。

可以看到无论是继承还是去new一个对象,都会报错

在这里插入图片描述
在这里插入图片描述

算术运算符

这里要注意的点不多,只不过要知道,整形除以0会报错,但浮点型可以除以0,会得到无穷大或者NAN结果(看前面的基本数据类型

数学函数与常量(Math)

在Math类中,包含了各种各样的数学函数

  • Math.sqrt():求平方
  • Math.pow():求幂
  • 还有一些三角函数
  • 指数函数和反函数(log)
  • 提供了两个常量PI和E

在这里插入图片描述

数值类型之间的转换

数值类型之间的转换,一般来说,小字节的转换为大字节的,不需要强转(不过可能发生精度丢失)

发生精度丢失,其实就是转化成float或者double的时候会发生

//基本数据类型的优先级
byte,short,char—> int —> long—> float —> double
  • 不能对boolean类型的数据进行类型转化
  • 不能把对象类型转化成不相关类的对象
  • 优先级大转换成小的时候(大字节转化为小字节)的时候,必须使用强制类型转化
  • 转化过程可能导致溢出(强制转化导致),或者精度损失(转化成float或者double导致)
  • 浮点数转化成小数是向下取整,而不是四舍五入(想要进行四舍五入使用Math.round方法)

下面是一副转化图,黑线代表合法转化,红线代表可以转化,但可能会发生精度丢失
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,我来简单介绍一下Java的基本语法。 1. 常量Java中的常量是指一旦定义后,不可修改的值。常量可以使用关键字final来声明,并且通常使用全大写字母来表示。例如: ``` final double PI = 3.1415926; final int MAX_VALUE = 100; ``` 2. 变量Java中的变量是可以被修改的值。变量需要先声明,再进行赋值。Java中的变量基本数据类型和引用数据类型两种。例如: ``` int age = 18; String name = "Tom"; ``` 3. 数据类型Java中的数据类型可以分为基本数据类型和引用数据类型基本数据类型包括整型、浮点型、布尔型和字符型。引用数据类型包括数组、类、接口等。例如: ``` int num = 10; double d = 3.14; boolean flag = true; char c = 'a'; String str = "Hello world"; ``` 4. 运算符:Java中的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符等。例如: ``` int a = 10; int b = 20; int c = a + b; boolean flag = (a > b) && (a != b); ``` 5. 控制语句:Java中的控制语句包括条件语句、循环语句和跳转语句。条件语句包括if语句和switch语句。循环语句包括for循环、while循环和do-while循环。跳转语句包括break、continue和return语句。例如: ``` if (a > b) { System.out.println("a > b"); } else { System.out.println("a <= b"); } for (int i = 0; i < 10; i++) { System.out.println(i); } while (flag) { System.out.println("Hello"); flag = false; } ``` 以上是Java的基本语法,希望能对您有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值