Java学习随笔-第02章:变量与运算符

一、随堂复习

1.1 关键字、保留字

  • 关键字:被Java赋予特殊含义的字符串。

    • 官方规范中有50个关键字

    • true、false、null虽然不是关键字,但是可以当做关键字来看待。

  • 保留字:goto 、 const

1.2 标识符

  • 标识符:凡是可以自己命名的地方,都是标识符。

    • 比如:类名、变量名、方法名、接口名、包名、常量名等

  • 记住:标识符命名的规则(必须要遵守的,否则编译不通过)

  • > 由26个英文字母大小写,0-9 ,_或 $ 组成
    > 数字不可以开头。
    > 不可以使用关键字和保留字,但能包含关键字和保留字。
    > Java中严格区分大小写,长度无限制。
    > 标识符不能包含空格。 

  • 记住:标识符命名的规范(建议遵守。如果不遵守,编译和运行都能正常执行。只是容易被人鄙视)

> 包名:多单词组成时所有字母都小写:xxxyyyzzz。
  例如:java.lang、com.atguigu.bean
  
> 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
  例如:HelloWorld,String,System等
  
> 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
  例如:age,name,bookName,main,binarySearch,getName
  
> 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
  例如:MAX_VALUE,PI,DEFAULT_CAPACITY
  • “见名知意”

class IdentifierTest{
    public static void main(String[] args){
        
        int abc = 12;
        int age = 12; //age :标识符
​
​
        char gender = '男';
​
        char c1 = '女';
        
        //不推荐的写法
        //int myage = 12;
​
        //System.out.println(myage);
​
        int myAge = 12;
        
    }
​
    public static void main1(String[] args){
        
    }
}
​
​
class _a$bc{
}
​
/*
class 1abc{
}
*/
​
class Public{
}
​
class publicstatic{
}
​
class BiaoShiFuTest{
}

1.3 变量的基本使用(重点)

  1. 变量的理解:内存中的一个存储区域,该区域的数据可以在同一类型范围内不断变化

  2. 变量的构成包含三个要素:数据类型、变量名、存储的值

  3. Java中变量声明的格式:数据类型 变量名 = 变量值

class VariableTest {
    public static void main(String[] args) {
        
        
        //定义变量的方式1:
        char gender; //过程1:变量的声明
        gender = '男'; //过程2:变量的赋值(或初始化)
​
        gender = '女';
        
        //定义变量的方式2:声明与初始化合并
        int age = 10;
​
​
        System.out.println(age);
        System.out.println("age = " + age);
        System.out.println("gender = " + gender);
​
        //在同一个作用域内,不能声明两个同名的变量
        //char gender = '女';
​
        gender = '男';
        
        //由于number前没有声明类型,即当前number变量没有提前定义。所以编译不通过。
        //number = 10;
​
        byte b1 = 127;
        //b1超出了byte的范围,编译不通过。
        //b1 = 128;
​
    }
​
    public static void main123(String[] args) {
        //System.out.println("gender = " + gender);
​
        char gender = '女';
        
    }
}

说明:

  1. 定义变量时,变量名要遵循标识符命名的规则和规范。

  2. 说明:

  • ① 变量都有其作用域。变量只在作用域内是有效的,出了作用域就失效了。
  • ② 在同一个作用域内,不能声明两个同名的变量
  • ③ 定义好变量以后,就可以通过变量名的方式对变量进行调用和运算。
  • ④ 变量值在赋值时,必须满足变量的数据类型,并且在数据类型有效的范围内变化。

1.4 基本数据类型变量的使用(重点)

1、Java中的变量按照数据类型来分类:

    基本数据类型(8种):
        整型:byte \ short \ int \ long 
        浮点型:float \ double 
        字符型:char
        布尔型:boolean
​
    引用数据类型:
        类(class)
        数组(array)
        接口(interface)
​
        枚举(enum)
        注解(annotation)
        记录(record)

测试整型和浮点型:

/*
测试整型和浮点型变量的使用
​
​
*/
class VariableTest1 {
    public static void main(String[] args) {
        
        //1.测试整型变量的使用
        // byte(1字节=8bit) \ short(2字节) \ int(4字节) \ long(8字节) 
​
        byte b1 = 12;
        byte b2 = 127;
        //编译不通过。因为超出了byte的存储范围
        //byte b3 = 128;
​
        short s1 = 1234;
​
        int i1 = 123234123;
        //① 声明long类型变量时,需要提供后缀。后缀为'l'或'L'
        long l1 = 123123123L;
​
        //② 开发中,大家定义整型变量时,没有特殊情况的话,通常都声明为int类型。
​
        //2.测试浮点类型变量的使用
        //float \ double
        double d1 = 12.3;
        //① 声明long类型变量时,需要提供后缀。后缀为'f'或'F'
        float f1 = 12.3f;
        System.out.println("f1 = " + f1);
​
        //② 开发中,大家定义浮点型变量时,没有特殊情况的话,通常都声明为double类型,因为精度更高。
​
        //③ float类型表数范围要大于long类型的表数范围。但是精度不高。
​
        //测试浮点型变量的精度
        //结论:通过测试发现浮点型变量的精度不高。如果在开发中,需要极高的精度,需要使用BigDecimal类替换浮点型变量。
        //测试1
        System.out.println(0.1 + 0.2);
​
        //测试2:
        float ff1 = 123123123f;
        float ff2 = ff1 + 1;
        System.out.println(ff1);
        System.out.println(ff2);
        System.out.println(ff1 == ff2);
        
    }
}

1.5 基本数据类型变量间的运算规则(重点)

1.5.1 自动类型提升
​
/*
测试基本数据类型变量间的运算规则。
​
1. 这里提到可以做运算的基本数据类型有7种,不包含boolean类型。
2. 运算规则包括:
        ① 自动类型提升
        ② 强制类型转换
​
3. 此VariableTest3.java用来测试自动类型提升
​
规则:当容量小的变量与容量大的变量做运算时,结果自动转换为容量大的数据类型。
​
    byte 、short 、char ---> int  --->  long  ---> float ---> double
​
    特别的:byte、short、char类型的变量之间做运算,结果为int类型。
​
说明:此时的容量小或大,并非指占用的内存空间的大小,而是指表示数据的范围的大小。
     long(8字节) 、 float(4字节)
​
*/
class VariableTest3 {
    public static void main(String[] args) {
        
        int i1 = 10;
        int i2 = i1;
​
        long l1 = i1;
​
        float f1 = l1;
​
​
        byte b1 = 12;
        int i3 = b1 + i1;
​
        //编译不通过
        
  • 27
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
根据引用中提供的代码,可以使用toUnixTimestamp函数将日期对象转换为Unix时间戳。根据引用中的说明,刷新间隔时间是指从服务器检查域数据文件是否需要更新的时间间隔。根据引用中的示例,可以将域数据文件复制到指定的目录下。根据您提供的时间戳"2023-09-03T08:38:43.548 00:00",您可以使用toUnixTimestamp函数将其转换为Unix时间戳。请注意,时间戳应该是一个数字,表示从Unix纪元(1970年1月1日)开始的秒数。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [to-unix-timestamp:将日期转换为Unix时间戳](https://download.csdn.net/download/weixin_42160425/18164877)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Linux随笔16-主从DNS服务搭建以及智能DNS服务搭建、基于CentOS7.6编译安装MySQL-5.7.32](https://blog.csdn.net/ikkyphoenix/article/details/118445272)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值