JAVA笔记_第三章数据类型和运算符

第三章 数据类型和运算符

1、含义

  • Java语言是一门强类型语言

    • 所有变量必须先声明,后使用
    • 指定类型的变量只能接受类型与之匹配的值
  • 基本类型

    • 数值类型
      • 整型、字符型、浮点型【相互之间可以进行转换–自动类型转换或强制类型转换】
    • 布尔类型
  • 引用类型

    • 类、接口、数组类型、还有一种特殊的null类型
    • (就是对一个对象的引用,对象包括实例和数组,引用类型变量就是一个指针,但是Java语言中不使用指针这个说法)
    • 【空引用(null)只能被转换成任何引用类型,不能转换为基本类型】

2、注释

  • 单行注释------- //

  • 多行注释------- /* */

  • 文档注释------- /** */

    • API文档

3、标识符和关键字

1、分隔符
  • 分号:语句的分隔
  • 花括号:定义代码块,必须成对出现
  • 方括号:用于访问数组元素
  • 圆括号
  • 空格
  • 圆点

2、标识符规则

  • 字母、数字、下划线、美元符号,但是数字不可以打头
  • 不能是Java关键字和保留字,但是可以包含关键字和保留字
  • 不能包含空格
  • 除了美元符号,其他特殊符号都不可以

3、关键字

  • 关键字都是小写

4、基本数据类型

4.1 整型
  • 如果使用了一个巨大的数据值(就是超出了int类型的范围了),Java不会自动把整个整数值当成Long类型来帮你处理的,但我我们又希望系统帮我们处理的话,那么我们就需要在整数值后面增加l或者L作为后缀(一般用L,区分数值1)
  • long a = 22222222155225555L;
  • 我们可以直接将较小的值(就是数值在Int类型的范围之内)直接赋值给Long,并不是因为Java会把较小的整数值当做Long类型来处理,系统任然是按照Int类型来处理的,只是因为Int类型的值自动类型转换为Long类型

  • 二进制整数以0b或者0B开头
  • 八进制整数以0开头
  • 十六进制整数以0x或者0X开头

  • 计算机以补码的形式保存数据值
  • 原码 ------符号位不变,其它位取反------反码-------加1---------补码
4.2 字符型
  • 表示单个字符
  • 单引号(‘’)括起来

  • 字符集:所有字符的编号组成总和

  • 三种形式
  • 单个字符 例如’9’、‘A’
  • 转义字符 例如’\n’、’\t’
  • Unicode值表示字符型值 例如’\uXXXXX’ XXXX表示十六进制
4.3 浮点型
  • 单精度浮点数:float-------后缀F或者f
  • 双精度浮点数:double-------后缀D或者d----不过这个一般可以省略
  • 因为Java浮点数是使用二进制数据的科学计数法来表示浮点数的,所以不能精确的表示一个浮点数要想精确的保存一个浮点数,需要使用BigDecimal类

  • 只有浮点数除于0才可以得到正无穷大跟负无穷大
  • 正无穷大 可以通过Double跟Float类的POSITIVE_INFINITY获得 或者直接1.0/0 所有正无穷大的值都是一致的
  • 负无穷大 可以通过Double跟Float类的NEGATIVE_INFINITY获得 或者直接-1.0/0 所有正无穷大的值都是一致的
  • 非数(0.0除于0.0或对一个负数开方)可以通过Double跟Float类的NaN获得 所有非数不一致

  • 允许在数据中添加下划线 不影响数据值

  • 3.14_15_92_6

    4.4 布尔型
  • TRUE 或者 FALSE

5、基本类型的类型转换

5.1 自动类型转换
  • 所有数值型变量可以相互转换
  • 系统自动支持将某种基本类型的值直接赋值给另一种基本类型的变量—自动类型转换
  • 理解为容量小的可以放到容量大的当中

  • byte–>short–>int–>long–>float–>double
  • char–>int–>long–>float–>double

  • 当把任何基本类型的值和字符串进行连接运算时,基本类型的值将自动类型转换为字符串类型,虽然字符串类型不属于基本类型,它是引用类型
  • System.out.println(3 + 4+“Hello!”);-------->7Hello!
  • System.out.println(“Hello!”+3 + 4);-------->Hello!34
5.2 强制类型转换
  • 就是自动类型的相反的方向
  • (targetType)value

6、运算符

  • byte a =5;
  • a = a +5; 错误
  • a += 5; 正确

你可能感兴趣的:(Java基础)