Java中的变量、数据类型和运算符

 1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小。

  2.基本数据类型:  

    byte:最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127
    short:短整型,在内存中占2个字节,取值范围-32768~32717
    int:整型,用于存储整数,在内在中占4个字节,取值范围-2147483648~2147483647
    long:长整型,在内存中占8个字节
    float:浮点型,在内存中占4个字节,用于存储带小数点的数字(与double的区别在于float类型有效小数点只有6~7位)
    double:双精度浮点型,用于存储带有小数点的数字,在内存中占8个字节
    char:字符型,用于存储单个字符,占2个字节
    boolean:布尔类型,占8个字节,用于判断真或假(仅有两个值,即true、false)
  3.引用数据类型:
    数组
    String:字符串型,用于存储一串字符
 
 
  

  4.变量声明及使用:

    声明变量

    语法:数据类型 变量名;  

    double score;     //声明双精度浮点型变量score存储分数
    String name; //声明字符串变量name 存储学生姓名

    给变量赋值

    语法:变量名 = 值;
    eg:

  

  score = 98.5;

  name = "张三";

    数据类型 变量名 = 值;   

double score = 98.5;

String name = "张三";

    变量名命名规则

      1)变量必须以字母、下划线“_”或美元“$”符号开头

      2)变量可以包括数字,但不能以数字开头

      3)除了“_”或“$”符号以外,变量名不能包含任何特殊字符

      4)不能使用Java语言的关键字

    常量

    常量代表程序运行过程中不能改变的值,定义常量时,需要用final关键字,常量名要大写,多个单词之间用“_”分隔、

    语法: final 数据类型 常量名 = 值;

    

    final double PI = 3.14; //定义表示圆周率的常量

    final int MAX_NUM = 50; //定义表示人数最多的常量

    5.运算符

      1)赋值运算符     

    =:将右边的值赋给左边,例:int a = 1;
    +=:左右两边的和相加赋给左边,例:int a = 1; a+=2;结果a的值为3
    -=:左边减去右边的差赋给左边,例:int a =5;a-=2;结果a的值为3
    *=:两边数值相乘的值赋给左边,例:int a = 2;a*=2;结果a的值为4
    /=:左边除以右边的值赋给左边,例:int a = 6;a/=2;结果a的值为3
    %=:左边除以右边的余数赋给左边,例:int a =7;a%=2;结果a的值为1

      2) 算数运算符

        “+” 两个数相加

        “-”两个数相减

        “*”两个数相乘

        “/”两个数相除

        “++” 自增1

          “--”自减1

        (i++ 与 ++i的区别)

          1)++i 的用法(以 a=++i ,i=2 为例)

            先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ),

              则最终 a 值等于 3 , i 值等于 3 。
  
               所以 a=++i 相当于 i=i+1 ,a=i

         2)i++ 的用法(以 a=i++ ,i=2 为例)

            先将 i 值赋给变量 a (也就是 a=i ),然后 i 值加 1 (也就是 i=i+1 ),

            则最终 a 值等于 2 ,i 值等于 3 。

              所以 a=i++ 相当于 a=i , i=i+1

          3)++i 与 i++

             a=++i 相当于 i++ , a=i

             a=i++ 相当于 a=i , i++
  
           4)++i 与 i++ 单独使用时,相当于 i=i+1

            如果赋给一个新变量,则 ++i 先将 i 值加 1 ,而 i++ 先将 i 赋给新变量。

      关系运算符

        >:大于,例:int a = 1;int b = 2;System.out.print(a > b);其结果为false
        <:小于,例:int a = 1;int b = 2;System.out.print(a < b);其结果为true
        >=:大于等于,例:int a = 1;int b = 2;System.out.print(a >= b);其结果为false
        <=:小于等于,例:int a = 1;int b = 2;System.out.print(a <= b);其结果为true
        ==:等于,例:int a = 1;int b = 2;System.out.print(a == b);其结果为false
        !=:不等于,例:int a = 1;int b = 2;System.out.print(a != b);其结果为true
        其结果都是boolean类型,即要么是true要么是false
      
      逻辑运算符
        &&:与、并且(短路),   两个条件同时为真时,结果为真
        ||:或、或者(短路),   两个条件有一个为真时,结果即为真
        !:非,(!+条件)  条件为真时,结果为假
 
 
 
    6.Java中的数据类型转换
      1:自动数据类型转换(放大转换)
      满足自动数据类型转换条件:
      1)两种类型要兼容:如数值类型(整型和浮点型)
      2)目标类型大于源类型:例如int型数据可以自动转换为double类型
 
      2:强制数据类型转换(缩小转换)
      在变量前加上括号,在括号中指定要强制转换的类型
      例:double a = 40.9;
         int b = (int)a;
      注:强制转换会损失数值精度,例如double类型变量a,经强制转换为int类型后值变为40
上一篇:JAVA -数据类型与表达式---基本数据类型


下一篇:JAVA -数据类型与表达式---变量与赋值