栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java运算符

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java运算符

一,算术运算符(+,-,*,/,%,++,--)

整数运算规则:

    如果两个操作数为long,则结果也为long。==没有long时,结果为int。即使操作数全为short,byte,结果也是int。整形默认数据类型时int.

浮点运算:

如果两个操作数有一个为double,则结果为double

只有两个操作数时float,则结果才为float。

取模运算:

其操作数可以为浮点数,一般使用整数,结果是"余数",“余数”符号和左边操作数相同,如:7%3=1,-7%3=-1,7%-3=1、

二,赋值、扩展运算符(+=,-=,*=,/=,%=)

int a = 3;
int b = 4;
a += b;  //相当于a = a + b
System.out.println("a="+a+"nb="+b); 
a = 3;
a *= b;//相当于a = a*b;
System.out.println("a="+a+"nb="+b);

三,关系运算符(==,!=,>,<,>=,<=)

 关系运算符是用来进行比较运算的,关系运算符的结果是布尔类型,其结果只会输出true(真)/false(假)。

=是赋值运算符,==是比较比较两个操作数是否相等的运算符。

==、!=是所有数据类型都可以使用。

>,<,>=,<=仅限于数值类型和char.

int a = 4;
        int b = 6;
        boolean c = a>b;
        System.out.println(c);

        //char值位于0~65536之间,可以通过int类型强制转换为数字来进行比较
        char d = 'y';
        System.out.println((int)d);
        boolean e = d>100;
        System.out.println(e);

四,逻辑运算符(&,|,!,&&,||,^)

与&、短路与&&,-----只有一个操作数为false,则为false。

或|、短路或||,---------只有一个操作数为true,则为true。

非!,------------------取反。

异或^,------------------相同为false,不同true。

逻辑运算的操作数和运算结果都是boolean,值。

短路与&&,短路非||,当左边操作数为true时不执行右边操作数。

代码区:

//int b3 = 3/0;//会报不能除以0异常
//boolean b1 = 1>2 & 4<(3/0);
//System.out.println(b1);
//boolean b2= 1<2 | 4<(3/0);
//System.out.println(b2);
boolean b3 = 1>2 && 4<(3/0);
System.out.println(b3);
boolean b4 = 1<2 || 4<(3/0);
System.out.println(b4);
boolean b5 = !(1>2);//false为true,true则为false。
System.out.println(b5);
boolean b6 = 1<2 ^ 2>3;//相同为假false,不同为真true
System.out.println(b6);

五,位运算符(~,&,|,^,<<,>>)

 ~,取反;&按位与,|按位或,^按位异或,

<<右移运算符,右移一位相当于乘二;>>左移运算符,左移一位相当于除二。

代码区:

int a = 7;
int b = 8;
System.out.println(a&b);//结果:0
System.out.println(a|b);//结果:15
System.out.println(a^b);//结果:15
System.out.println(~b);//结果:-9
         
//移位操作
//乘以2除以2用移位操作最快。
int c = 5<<2;  //5*2*2   结果:20
System.out.println(c);      //<<,左移运算符,左移1位相当于乘2
System.out.println(40>>3);  //相当于:40/8  //>>,右移运算符,右移1位相当于除2取商

6,条件运算符(三元算符)

格式:“x ? y : z”  当x为true,则返回y;当x为false时,则返回z。

返回数据类型 变量名 = “x ? y : z”

public class TestOperator06{
    public static void main(String[] args){
        int score = 90;
        String a = score>60?"及格":"不及格";
        System.out.println(a);
         
         
         
        int x = -100;
        int flag = x > 0 ? 1:(x==0 ? 0 : -1);
        System.out.println(flag);//结果:-1
         
         
        //优先级问题的用法
        boolean s1=true,s2=true,s3=false;
        System.out.println(s1||s2&&s3);//逻辑运算符里:非>与>或
         
        //当遇到复杂情况时,建议使用小括号组织表达式
        boolean s4 = (3>1||4>3)&&(3<5);
        System.out.println(s4);
         
    }
     
     
}

7,字符串连接符(+)

这里要注意连接符连接的时String类型(为字符串型,指一串字符)而不是char类型(字符型,指单个字符)

public class TestOperator05{
     
    public static void main(String[] args){
        String a = "3";
        int b = 4;
        //1.‘+’运算符两侧操作数中要有一个是字符串(String)类型,
        //系统会自动将另一个 操作数转换成字符串然后在进行连接。
        System.out.println(a+b);
         
         
        char c1 = 'h';  //条件是String类型,不是char.;若是char,则是将字符所在位置数字相加。
        char c2 = 'i';
        System.out.println(c1+c2);
        System.out.println(""+c1+c2)://通过加空字符串(""+),让整个+变成连接符
         
    }
     
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/734998.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号