zoukankan      html  css  js  c++  java
  • Java基础之常量、变量、数据类型、运算符

    1.常量

    常量是指在java程序中固定不变的数据

    2.变量和数据类型

    变量:常量是固定不变的数据 ,那么在程序中可以变化的量成为变量

    使用变量时的一些注意事项:

    • 如果创建多个变量,那么变量之间的名称不可以重复

    • 对于float和long类型来说,字母后缀F和L不要丢掉

    • 如果使用byte或者short类型的变量,那么右侧的数据值不能超过左侧类型的范围

    • 没有赋值的变量不能直接使用:一定要赋值之后才能使用

    • 变量使用不超过作用域范围 【作用域】:从定义变量的一行开始,一直到所属大括号结束为止

    • 可以通过一个语句来创建多个变量,但是一般不推荐这样写

    基本数据类型

    • 整数型:byte short int long

    • 浮点型:float double

    • 字符型:char

    • 布尔型:Boolean

    Java中的默认类型:整数类型是int、浮点类型是double

    引用数据类型**:

    • 字符串、数组、类、接口、lambda

    注意事项:

    1. 字符串不是基本类型,而是引用类型

    2. 浮点型可能只是一个近似值,并非精确的值

    3. 数据范围与字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节

    4. 浮点数当中默认是double,如果一定要使用float类型,需要加上一个后缀F。如果是整数,默认是int类型,如果一定要使用long类型,需要加上一个后缀L,推荐使用大写字母后缀

    3.数据类型转换

    3.1自动转换

    一个 int 类型变量和一个 byte 类型变量进行加法运算, 结果会是什么数据类型?

    public static void main(String[] args) { 
        int i = 1; 
        byte b = 2; // byte x = b + i; // 报错 //int类型和byte类型运算,结果是int类型 int j = b + i; System.out.println(j); 
    }

    运算结果,变量的类型将是 int 类型,这就是出现了数据类型的自动类型转换现象。

    自动转换:将 取值范围小的类型 自动提升为 取值范围大的类型 。

    同样道理,当一个 int 类型变量和一个 double 变量运算时, int 类型将会自动提升为 double 类型进行运算。

    转换规则:范围小的类型向范围大的类型提升, byte、short、char 运算时直接提升为 int 。

    byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double

    3.2强制转换

    将 1.5 赋值到 int 类型变量会发生什么?产生编译失败,肯定无法赋值。

    double 类型内存8个字节, int 类型内存4个字节。 1.5 是 double 类型,取值范围大于 int 。可以理解为 double 是8升的水壶, int 是4升的水壶,不能把大水壶中的水直接放进小水壶去。 想要赋值成功,只有通过强制类型转换,将 double 类型强制转换成 int 类型才能赋值。

    强制类型转换:将 取值范围大的类型 强制转换成 取值范围小的类型 。

    转换格式: 数据类型 变量名 = (数据类型)被转数据值;

    将 1.5 赋值到 int 类型,代码修改为:

    // double类型数据强制转成int类型,直接去掉小数点。 会发生精度丢失
    int i = (int)1.5;

    注意:

    • 当数据类型不一致时,将会发生数据类型转换

    • 自动类型转换(隐式)

      1. 特点:代码不需要特殊处理,自动完成

      2. 规则:数据范围从小到大.

    • 强制类型转换(显式)

      1. 特点:代码需要进行特殊的格式处理,不能自动完成

      2. 格式:范围小的数据类型 范围小的变量名 = (范围小的类型) 原本范围大的数据

    • 注意事项:

      1. 强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出

      2. byte/short/char 这三种类型都可以发生数学运算,例如加法

      3. byte/short/char 这三种类型在运算的时候,都会被先提升称为int类型,然后再计算

      4. boolean类型不能发生任何数据类型的转换

    3.3 ASCII码表

    public static void main(String[] args) {
       char c = 'a';
       int i = 1;
       System.out.println(c + i); // 输出结果为98
    }

     

    4.运算符

    4.1 算术运算符

    自增运算符: ++ 自减运算符: --

    基本含义:让一个变量涨一个数字1,或者让变量降一个数字1 使用格式:写在变量名称之前,或者写在变量名称之后。例如:num++ 或者 ++num 使用方式: 1.单独使用:不和其他任何操作混合,自己独立成为一个步骤 2.混合使用:和其他操作混合,例如与赋值混合 使用区别: 1.再单独使用的时候,前++和后++没有任何区别 2.在混合使用的时候,有重大区别: A:如果是前++,那么变量立刻马上+1,然后拿着结果进行使用 先加后用 B: 如果是后++,那么首先使用变量本来的数值,再让变量+1 先用后加

    注意事项: 只有变量才能使用自增、自减运算符,常量不可以发生改变,所以不能使用

    4.2 赋值运算符

    4.3 比较运算符

    4.4 逻辑运算符

    4.5 三元运算符

    格式:数据类型 变量名 = 布尔类型表达式?结果1:结果2

    public static void main (String[] args) {
        int i = 1==2 ? 100 : 200;
        System.out.println(i);
    }

     

     

  • 相关阅读:
    Azure PowerShell (2) 修改Azure订阅名称
    Windows Azure Platform Introduction (11) 了解Org ID、Windows Azure订阅、账户
    Azure PowerShell (3) 上传证书
    Azure PowerShell (1) PowerShell入门
    Windows Azure Service Bus (2) 队列(Queue)入门
    Windows Azure Service Bus (1) 基础
    Windows Azure Cloud Service (10) Role的生命周期
    Windows Azure Cloud Service (36) 在Azure Cloud Service配置SSL证书
    Android studio 使用心得(一)—android studio快速掌握快捷键
    android 签名、混淆打包
  • 原文地址:https://www.cnblogs.com/guoruijie/p/13294572.html
Copyright © 2011-2022 走看看