Java 常量与变量

标识符

  1. 如 类 的名字
  2. 标识符命名规则
    • 可以由 字母、数字、下划线 ( _ ) 和美元 ( $ ) 符组成,不能以数字开头
    • 标识符严格区分大小写
    • 不能是Java的关键字和保留字
    • 标志符的命名最好能反映出作用

关键字

关键字
abstract boolean break byte case catch
char class continue default do double
else extends false final finally float
for if implements import native int
interface long instanceof new null package
private protected public return short static
super switch synchronized this throw throws
transient true try void volatile while

变量

  1. 什么是变量
    • 程序中数据的临时存放场所,解决数据存储的问题,存储到内存中
    • 变量的三个元素:变量类型、变量名和变量值
    • 格式:数据类型 变量名;
      • 例子:int n; 声明整型 n
      • 使用 “= ” 运算符进行赋值
    • 可以在定义变量的同时给变量赋值,即变量的初始化。
  2. 变量的命名规则
    • 满足标识符的命名规则
    • 符合驼峰法命名规范
    • 尽量简单、做到见名知意
    • 变量名的长度没有限制
  3. 类的命名规则
    • 满足 Pascal 命名法规范
    • 组成类名的 首字母 总是大写

数据类型

1个字节等于8位,类定义的变量又叫对象

  1. 基本数据类型

    • 数值型
      1. 整数类型(byte、short、int、long)
        • 字节型 1
          • 表示范围:-128 - 127
          • 占用内存 1 字节(8 bits)
        • 短整型 2
          • 表示范围:-32768 - 32767
          • 占用内存 2 字节
        • 整型 4
          • 表示范围:-2,147,483,648 - 2,147,483,647
          • 占用内存 4 字节
        • 长整型 8
          • Java 中的整数类型默认为 int。如果需要使用 long 类型,需要在数值后加 L 或 l 来声明
          • 最小值:-9,223,372,036,854,775,808 ~ 最大值:9,223,372,036,854,775,807)
          • 占用内存: 8 字节 (64 bits)
        • 整型字面值
          • Java 有三种表示整数的方法:十进制、八进制、十六进制
          • 八进制:以 0 开头,包含 0 - 7 的数字,如:037
          • 十进制:0-9,包含0 和 9
          • 十六进制表示:以 0x 或 0X 开头,包括 0-9 的数字,及字母 a-f 、A-F , a表示数字10,以此类推。如:0x12,0xabcf
          • 0x1abcL 长整型的表示方式,后缀 L,大小写均可
      2. 浮点类型(float、double)
        • 单精度浮点型 4
        • 双精度浮点型 8
          • 表示的范围是最大的
        • 浮点型字面值
          • 浮点型字面值默认情况下表示double类型,也可以在值后加上 d 或 D
          • 如表示 float 类型,则需要在字面值后加 f 或 F
        • 用科学计数法表示浮点型数据 double d = 1.23E5
    • 字符型(char)2
      • 字符型字面值
        • 字符型字面值用单引号内的单个字符表示。
        • 如何定义字符型变量? char a = ‘a’;
        • char 表示范围 0 -65535
          • 最小值: 0 (对应 Unicode 字符 ‘\u0000’)
          • 最大值: 65,535 (对应 Unicode 字符 ‘\uFFFF’)
        • char 类型只能存储单个字符,如果尝试存储多个字符会报错!
    • 布尔型(boolean) 1
      • 布尔值字面值
        • 布尔值只能定义 true 或 false
        • 例如:boolean b = true;
    • 字符串字面值
      • 字符串不属于基本数据类型,它是类!
      • 双引号引起来的0个或多个字符
      • 例如 String s = “”;
  2. 引用数据类型

    • 类(class)
    • 接口(interface)
    • 数组(Array)
    • 枚举(Enum)
    • 字符串(String)
  3. 按照作用范围分为

    • 类级
    • 对象实例级
    • 方法级 局部变量
    • 块级

信息编码

  1. ASCll 码
    • 美国标准信息交换代码
    • 基于拉丁字母的一套电脑编码系统
    • 主要用于显示现代英语和其他西欧语言(没有中文)
    • 使用7位或8位二进制数组合来表示128位或256种可能的字符
      • 7位二进制组合——标准ASCll 码 (表示 大小写字母、标点符号、美式英语中的控制字符等)
      • 8位 二进制数组合(后128位)—— 扩展ASCll 码(扩展ASCll 码表示特殊符号,外来语言的字母等)
  2. Unicode 编码
    • 统一码、万国码
    • 目标是支持世界上所有的字符集
    • char c = ‘\u005d’
    • Unicode 表示法,在值的前面加前缀 \u

类型转换

  1. 类型转换分为自动类型转换和强制类型转换
  2. 自动类型转换(隐式类型转换)
    • 转换顺序
  3. 强制类型转换
    • 强制类型转换,可能引起数据丢失
    • 如果 A 类型数据表示的范围比 B 类型大,则将 A 类型的值赋值给 B 类型,需要强制类型转换
      1
      double d  = 123.4;float f  = (float)d;
    • 强制类型转换的格式:(数据类型)数值

常量

  • final int n = 5;
  • 用 final 关键字定义常量
  • 不能变化的值
  • 常量名 一般用 大写字母表示,两个单词及以上,用下划线连接

转义字符

转义字符 描述
\uxxxx 四位16进制所表示的字符
' 单引号字符
" 双引号字符
\ 反斜杠字符
\r 回车
\n 换行
\t 横向跳格
\b 退格