Java复习笔记-02

本文介绍了Java编程中的关键字概念,如publicclass等,常量(包括字符串、整数、小数、字符和布尔)的定义,变量的概述、标识符规则,以及数据类型(基本和引用)、存储单位、类型转换(包括自动和强制转换)等内容。
摘要由CSDN通过智能技术生成

1 关键字

关键字是被java语言赋予特殊含义,具有专门用途的单词。

比如HelloWorld案例中的public class,static,void 都是java中的关键字。

1.1 关键字的特点

  • 组成关键字的字母全部都是小写
  • 在常用的IDE中,针对关键字都有高亮效果。不需要去死记硬背。

在这里插入图片描述

2 常量

常量又称之为字面值(字面量),就是程序在执行过程中,其值不可以发生改变的量。

  • 字符串常量
    • 用双引号括起来的内容
    • “HelloWorld”
  • 整数常量
    • 所有的整数
  • 小数常量
    • 所有的小数
  • 字符常量 不能为空 也不能有多个字符
    • ‘A’
  • 布尔常量 true false
  • 空常量
        // 字符串常量
        System.out.println("我爱平顶山~");
        // 整数常量
        System.out.println(-23);
        // 小数常量
        System.out.println(3.14);
        // 字符常量 字符常量中不能没有内容 也不能有多个内容
        System.out.println('中');
        // 布尔常量 比较特殊 只有两个值 true false
        System.out.println(false);
        // 空常量

3 变量

3.1 变量概述

  • 在程序执行过程中,在某个范围内其值可以发生改变的量。

  • 从本质上讲,变量是内存中存储数据的区域,能够用来存数据也可以取数据,还可以改变这个数据。

  • 变量的格式: 数据类型 变量名 = 初始化值;

3.2 标识符

  • 作用
    • 给包,类,变量,方法等起名字。
  • 组成规则(硬性规定)

字符,下划线 ,美元符组成

这里的字符包括英文大小写字母,中文字符数字字符。但是符号只能有两个:下划线和美元符

  • 注意事项(硬性规定)

不能以数字开头

不能是Java中的关键字

  • 命名规则(软性建议)
    • 基本要求–见名知意 age name
  • 常见命名规则
      • 全部小写,多级包用.隔开,是公司域名的反写。
      • 首字母大写,如果有多个单词,每个单词的首字母都大写(驼峰命名)
      • Hello HelloWorld
    • 变量或者方法
      • 一个单词时首字母小写 age name
      • 如果有多个单词,首字母小写,第二个单词开始首字母大写 userAddress ageOfGirlFriend maxAge
    • 常量
      • 用大写字母组成 _隔开
      • MY_FRIEND_AGE

3.3 计算机存储单元

变量是内存中的小容器,用来存储数据。

无论是内存还是硬盘,计算机存储设备的最小信息单元叫"位"(bit),又称之为比特位。通常用小写字母b表示。

计算机中最小的存储单元叫"字节",通常用大写B表示,一个字节由8个位组成

1 byte(B) = 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

1PB = 1024TB

1EB = 1024PB

1ZB = 1024EB

3.4 数据类型

  • 基本数据类型

    • 分为四类八种
    • 整数型
      • byte 1字节 -128~127
      • short 2字节 -32768~32767
      • int 4字节 21亿 整数的默认类型
      • long 8字节
        • 定义long类型时,需要添加L或者l,建议使用L
    • 浮点型
      • float 4字节
        • 定义float类型时,需要添加F或者f,建议使用F
      • double 8字节 浮点型的默认类型
        • 定义double类型时,可以添加D或者d,可以省略
    • 字符型
      • char 2字节
    • 布尔型
      • boolean 1字节

在这里插入图片描述

  • 引用数据类型

    • 除了基本数据类型,其它的都是引用数据类型

3.5 变量的定义

// 定义变量 byte short int long float double char boolean
        // 变量的定义格式: 数据类型 变量名 = 值;
        //byte
        byte b1 = 127;
        System.out.println(b1);
        // short
        short s1 = 8799;
        System.out.println(s1);
        // int
        int personNum = 1400000000;
        System.out.println(personNum);
        // long
        long num1 = 8000000000L;
        System.out.println(num1);
        float f1 = 5.12F;
        System.out.println(f1);
        double d1 = 3.14D;
        System.out.println(d1);
        char c = '中';
        System.out.println(c);
        boolean flag = false;
        System.out.println(flag);

        // 以下写法都对
        int num = 10_000_000;
        System.out.println(num);

        double num2 = 3e4;
        System.out.println(num2);

4 码表概述

计算机中之所以可以存储这么多字母,主要是因为每种字母都可以通过码表来转换成数字进行存储。

ASCII码表是从0-127,总共128个。包含了常见中英文大小写,阿拉伯数字以及键盘上的操作.

ISO8859-1称之为西欧码表,范围是0-255,在ASCII码表的基础上又添加了新的数据。由于总共有256个,占用了一个字节,所以是世界上第一张完整码表。

GBK中一个汉字占2个字节

UTF-8中一个汉字占3个字节

5 转义字符

\t  制表符    相当于按了一次tab键

\r 回车

\n 换行

\\ 反斜杠
\'  单引号
\"  双引号
默认值: \u0000   0

6 变量的注意事项

  • 变量如果没有进行赋值,是不可以直接使用的。
  • 变量只有在自己所属的作用域之内才有效,出了作用域之后,就不能使用了!
    • 作用域:从变量定义的那一行开始,到所在的大括号结束为止。
  • 一行当中可以一次性的定义多个相同类型的变量并且赋值(不推荐使用)
public static void main(String[] args) {
        // 变量如果没有进行赋值,是不可以直接使用的。
        // 格式: 数据类型 变量名 = 初始化值;
        // 数据类型 变量名;
        // 变量名 = 初始化值;
        // 定义一个变量,名称是num1
        int num1;
        // 将100赋值给num1
        num1 = 100;
        System.out.println(num1);

        // 扩展: {}是可以嵌套的
        int num2;
        {
            num2 = 10;
            System.out.println(num2);
        }
        System.out.println(num2);
        //一行当中可以一次性的定义多个相同类型的变量并且赋值.
        // 这种方式不推荐使用!!!
        int x =10,y=20,z=30;
        System.out.println(x);
        System.out.println(y);
        System.out.println(z);
    }

7 变量的类型转换

7.1 类型转换

类型转换分为:

  • 自动(隐式)类型转换
    • 由范围的数据类型转换成范围的数据类型
    • 特点:代码不需要处理,程序会自动完成。
// 当数据类型不一致时,需要进行类型转换
        // 整数类型的默认类型是int   浮点型类型的默认类型是double
        //这行代码是把int类型赋值给了long类型
        // int类型4个字节,long类型8个字节
        // 这里是由范围小的int类型转换成范围大的long类型
        long l = 100;
        System.out.println(l);
        // float(小) --> double(大)
        double d = 3.14F;
        System.out.println(d);
  • 强制类型转换(强转)
    • 由范围大的数据类型转换成范围小的数据类型
    • 特点:代码需要特殊处理,否则直接报错
    • 格式:范围小的数据类型 变量名 = (范围小的数据类型)范围大的值;
		// 强制类型转换
        // =左边的是int类型 =右边的是long类型
        // 由long类型转换成int类型
        // long(大) --> int(小)
        // 范围小的数据类型 变量名 = (范围小的数据类型)范围大的值;
        int num1 = (int) 10000L;
        System.out.println(num1);

7.2 补充:查看数据类型的取值范围

// byte类型的取值范围   max最大值  min最小值   value值
        System.out.println(Byte.MAX_VALUE);
        System.out.println(Byte.MIN_VALUE);

        // short类型的取值范围
        System.out.println(Short.MAX_VALUE);
        System.out.println(Short.MIN_VALUE);

        // int类型的取值范围
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);

        // long类型的取值范围
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);

        // float类型
        System.out.println(Float.MAX_VALUE);
        System.out.println(Float.MIN_VALUE);

        // double类型
        System.out.println(Double.MAX_VALUE);
        System.out.println(Double.MIN_VALUE);

7.3 类型转换扩展

  • 数字变量是可以用做运算
  • byte/short/char 在运算时会先提升为int类型,再进行计算
		byte num1 = 20;
        // byte(小) result = int(大);
        byte result = (byte) (num1 + 1);
        System.out.println(result);

        byte num2 = 30;
        short num3 = 100;
        // short(小) = int(大);
        short result1 = (short) (num2 + num3);
  • boolean具有特殊含义,不能进行强制类型转换
  • 对于byte/short/char类型来说,如果=右侧没有超出范围,那么编译器会自动补全强转
		byte num4 = 127;
        System.out.println(num4);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值