java学习-数据类型

Java中的变量有严格的数据类型区分。任何一个值都有其数据类型

数据类型

基本数据类型:

  1. 整数:byte(-128-127)、short()、int()、long()

    image-20220504191544033

    注: int为整数的默认类型,如需赋值long类型赋值较大整数时,须在后面追加L

    如果声明byte或者short类型需要特殊标注吗?

  2. 小数:double、float

     

    double是浮点型的默认类型,如需为float类型,须在值后面追加'F'或者'f'。如float f = 12.4F

  3. 布尔:只有两个值: true/false

    java中boolean不能参与算术运算。

  4. 字符:

    • ASCII

    • unicode编码: 它为每种语言中的每个字符设定了同意并且唯一的二进制编码,包括ASCII编码。满足跨语言、跨平台进行文字转换和处理。

    • char声明的字符:单引号包裹的单个字符

       

    注: 字符都是表示单个字符

  5. 转译字符:通过一些特殊符号来表示例如单引号和一些特殊字符。

     

     

引用数据类型:

  1. 字符串: 必须用双引号包裹。就赋值一些像js中普通字符串

     

  2. 数组:

  3. 对象:

 

类型转换

  1. 自动类型转换:前提:两种类型相互兼容,目标类型大于源类型

    short s = 122;
    int i = s;
  2. 强制类型转换:前提:两种类型相互兼容,目标类型小于源类型

    short s = 122;
    byte b = (byte)s;

    上面说的类型相互兼容,是指什么情况

    强制类型转换的规则:

    // 整数足够长,数据完整
    int i= 122; byte b = (byte)i   // b == 122
       
    // 整数不够长,数据截取
    int i = 10001 byte b = (byte)i  // b == 17(符号位变化,可能变为负数)

    // 浮点转整数,数据截断
    double d = 2.5 int i = (int)d   // i = 2
       
    // 字符整数互换,数据完整
    char c = 'A' int i = (inte)c   // i = 65 这里也可以给c赋值65或者'\u0041'
       
    // boolean的取值为true/false,不可与其他类型转换

运算符

  1. 算数运算符:

    • 二元: + - * / %(取余)

    • 一元: ++ --

  2. 赋值运算符: = += -= *= /= %=

  3. 关系运算符: > < >= <= ==等于 !==

  4. 逻辑运算符:两个boolean类型的操作数或者表达式进行比较

    &&-与 ||-或 !-非

  5. 三元运算符: 布尔表达式 ? 结果1 : 结果2

  1. == 是全等于吗?

  1. 自动类型提升:

    • 操作数中有以下的任何一种类型,结算结果自动提升为该类型。且优先级从左到右逐渐降低。如果操作数中均为byte或者short类型,计算结果提升为int型。

      double  float long int
    • 任何类型与String类型相加,实为拼接,计算结果提升为String类型。

控制台录入

引入工具包、声明Scanner等。不知道怎么用

 

posted on 2022-05-18 14:25  妖娆的油条2号  阅读(19)  评论(0编辑  收藏  举报

导航