Java语言基础(三)-运算符&&数据类型转换

原创 2017年03月08日 22:48:55

1、运算符

运算符是一些特殊的符号,主要用于数学函数、一些类型的赋值语句额逻辑比较方面,如赋值运算符、算术运算符、比较运算符等。

1.1赋值运算符

赋值运算符以符号“=”表示,它是一个二元运算符(对两个操作数作处理),其功能主要是将右方操作数所含的值赋给左方的操作数。

int a = 100;
int b = a+50;
int c = a+b;

1.2算数运算符

java中的算数运算符主要有一下五种,其中“+”和“-”还可以当作数据的正负号使用;
- “+”(加);
- “-”(减);
- “*”(乘);
- “/”(除);
- “%”(取余);

public class operation {
    /*
     * 运算符的使用
     */
    public static void main(String[] args) {
        int number_1 = 10;
        double number_2 = 15.22;
        System.out.println("和为:" + (number_1 + number_2));
        System.out.println("差为:" + (number_2 - number_1));
        System.out.println("积为:" + (number_1 * number_2));
        System.out.println("商为:" + (number_2 / number_1));

    }

}

1.3自增和自减运算符

自增、自减运算副是单目运算符,可以放在操作元之前,也可以放在操作员之后,操作员必须是一个整形或浮点型变量。自增、自减运算符的作用是使变量的值增1或减1。若放在操作元前面的自增、自减运算符,会先将变量的值加1(减1),然后再使该变量参与表达式的运算;反之放在操作元后面的自增、自减运算符,先会使变量参与表达式的运算,然后再将该变量加1(减1)

++a(--a);
//表示在使用变量a之前,先使a的值增加1(减少1);
a++(a--);
//表示在使用变量a之后,再使a的值增加1(减少1);
b = ++a;
//先将a的值加1,然后赋值给b;
b = a++;
//现将a的值赋值给b,在将a的值加1

1.4比较运算符

比较运算符属于二元运算符,用于程序中的变量之间、变量和自变量之间以及其它类型的信息之间的比较。比较运算符的结果为boolean类型。当运算符对应的关系成立时,运算结果为true,反之则为false。比较运算符共有6个;

  • “>”:左侧大于右侧;适用于整型、浮点型、字符型数据;
  • “>=”:左侧大于等于右侧;适用于整型、浮点型、字符型数据;
  • “<”:左侧小于右侧;适用于整型、浮点型、字符型数据;
  • “<=”:左侧小于等于右侧;适用于整型、浮点型、字符型数据;
  • “==”:左侧等于右侧;适用于基本数据类型、引用型;
  • “!=”:左侧不等于右侧;适用于基本数据类型、引用型;
public class operation_compare {
    /*
     * 比较运算符;
     */
    public static void main(String[] args){
        int a = 5;
        int b = 1;
        System.out.println("a>b的返回值为:"+(a>b));
        System.out.println("a>=b的返回值为:"+(a>=b));
        System.out.println("a<b的返回值为:"+(a<b));
        System.out.println("a<=b的返回值为:"+(a<=b));
        System.out.println("a==b的返回值为:"+(a==b));
        System.out.println("a!=b的返回值为:"+(a!=b));
    }

}

1.5逻辑运算符

  • “&&”:逻辑与,从左到右结合;一假即假,全真才真;
  • “||”:逻辑或,从左到右结合;一真即真,全假才假;
  • “!”:逻辑非,从右到左结合;右真即真,全真为假,全假为真;
public class operation_logic {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        /*
         * 逻辑运算符;
         */
        int a = 2;
        int b = 3;
        //声明boolean变量类型,用于保存逻辑运算符“&&”的返回值;
        boolean result1 = (a>b)&&(a!=b);
        boolean result2 = (a>b)||(a!=b);
        System.out.println(result1);
        System.out.println(result2);
    }

}

1.6位运算符

位运算符除“按位与”和“按位或”运算符外,其他只能用于处理整数的操作数。位运算是完全针对位方面的操作。

1.6.1“按位与”运算

使用“&”运算符,为双目运算符,“按位与”的运算法则是:如果两个整型数据a,b对应位都是1,则结果位才是1,否则为0。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同;

1.6.2“按位或”运算

使用“|”运算符,为双目运算符。“按位或”的运算法则是:如果两个操作数对应位都是0,则结果位才是0,否则为1。如果两个操作数精度不同,则结果的精度与精度高的操作数相同;

1.6.3“按位取反”运算

“按位取反”运算也称为“按位非”运算,运算符为“~”,为单目运算符。“按位取反”就是将操作数二进制中的1修改为0,0修改为1.

1.6.4“按位异或”运算

“按位异或”运算的运算符是“^”,为双目运算符。“按位异或”的运算法则是:当两个操作数的二进制表示相同(同为0或同为1时),结果为0,否则为1。若两个操作数的精度不同,则结果数的精度与精度高的操作数相同。

1.6.5移位操作

java中的移位运算符有三种;

  • <<:左移,就是将运算符左边的操作数的二进制数据按照运算符右边的操作数指定的位数向左移去,右边一空的部分补0;
  • >>:右移,当使用“>>”符号是,如果最高位是0,右移空的位就填入0,如果最高位是1,右移空的位就填入1;
  • >>>:无符号右移,无论最高位是0还是1,左侧被移空的高位都填入0;

1.6.6运算符的优先级

java中的表达式就是使用运算符连接起来的符合java规则的式子。运算符的优先级决定了表达式中运算执行的先后顺序。通常优先级由高到低的顺序依次是:增量和减量运算、算数运算、比较运算、逻辑运算、赋值运算。如果两个运算有相同的优先级,那么左边的表达式要比右边的表达式先被处理。

2、数据类型的转换

类型转换是将一个值从一种类型更改为另一种个类型的过程。数据类型转换有两种方式,即隐式转换和显式转换。

2.1隐式类型转换

从低级类型想高级类型的转换,无需做任何操作,系统将自动执行,这种类型的转换称为隐式转换。下列数据类型会涉及数据转换,不包括逻辑类型和字符类型。这些类型按精度从低到高排列顺序为byte

public class DataTypeConversion_Implicit {
    /*
     * 隐式数据类型的转换;
     */
    public static void main(String[] args) {
        int a = 50;
        float b = a ;
        System.out.println(b);
    }

}

2.2显式类型换转

把高精度的变量值赋值给低精度的变量时,必须使用显式类型转换运算(又称为强制类型转换)。

public class DataTypeConversion_Explicit {
    /*
     * 显式类型转换;
     */
    public static void mian(String[] args) {
        int a = (int)45.56;
        long b = (long)563.5F;
        System.out.println(a);
        System.out.println(b);
    }

}

备注:当执行显式类型转换时可能导致精度损失。只要是boolean类型意外的其它类型之间的转换,全部都能以显式类型转换的方法达到。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java语言基础(关键字、标识符、注释、常量与变量、进制、数据类型、类型转换、代码示例)

一、关键字 关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有字母都为小写   用于定义数据类型的关键字 class ...

Java语言基础(二)——数据类型、运算符和流程控制语句

数据类型、运算符和流程控制语句

Java语言基础之基本数据类型与数据类型转换

由于Java中对于字符串已经有了较好的封装,在使用字符串处理数据类型的转换就非常方便了。 八种基本数据类型都有自己的封装类: 八种数据类型对应的封装类 数据类型 封装类 ...

Java语言基础——数据类型与数据类型转换

一、数据类型 1.什么是数据类型 答:数据类型是指直接包含值的类型。 2.为什么有数据类型 答: Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内...

java基础数据类型转换及基本运算符

一,基础数据类型的转换 byte(8) --------》 short(16)--------》 int(32)--------》 long(64)--------》 float(32) --...
  • p_lvx
  • p_lvx
  • 2017年12月01日 21:20
  • 16

JAVA 基础语法(二)——基本数据类型转换以及运算符

JAVA入门第二天JAVA 基础语法(二)——基本数据类型转换以及运算符 数据类型转换 自动类型转换 强制类型转换 赋值运算符 算术运算符 关系运算符 逻辑运算符 数据类型转换Java 语言是一种强...

JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

Java基础语法(变量、常量、数据类型、运算符与数据类型转换) 1、变量 Java中,用户可以通过指定数据类型和标识符来声明变量,其基本语法为: DataType identif...

Java中的变量、数据类型、运算符、类型转换--(三)

Java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小。  ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java语言基础(三)-运算符&&数据类型转换
举报原因:
原因补充:

(最多只允许输入30个字)