java入门2(运算符)

目录

运算符和C语言基本一样

算术运算符

单目运算符:自增自减运算符

 比较运算符

逻辑运算符 

位运算符(C语言好像没有) 

优先级

交换算法


运算符和C语言基本一样

算术运算符

比如拆分一个三位数

public class java练习代码 {
    public static void main (String[] args) {
        int num2=986;
        int bai2=num2/100;
        int ge2=num2%10;
        int shi2=num2%100/10;
        System.out.println(num2+"的百位数字是:"+bai2);
        System.out.println(num2+"的十位数字是:"+shi2);
        System.out.println(num2+"的个位数字是:"+ge2);
    }
}

java入门2(运算符)_第1张图片

 

单目运算符:自增自减运算符

public class java练习代码 {
    public static void main (String[] args) {
        int a=1;
        a+=2;
        System.out.println(a);

        System.out.println("-------");
        int b=12;
        --b;
        System.out.println(b);

        System.out.println("-------");
        int c=5;
        // ++在后,先用再+
        //--在后,先用再-
        int d=c++;
        System.out.println(c);
        System.out.println(d);

        System.out.println("-------");
        //++在前,先+再用
        //--在前,先-再用
        int x=15;
        int y=++x;
        System.out.println(x);
        System.out.println(y);

    }
}

java入门2(运算符)_第2张图片

 比较运算符

字符串之间的等值比较不能用==,而要用.equals()

import java.util.Scanner;

public class java练习代码 {
    public static void main (String[] args) {
        int num1=23;
        int num2=23;
        boolean flag=num1

java入门2(运算符)_第3张图片

逻辑运算符 

&& 逻辑与 两个条件同时成立,整个表达式才成立 :同真则真,有假则假

|| 逻辑或 两个条件只要有一个成立,则整个表达式成立 :有真则真,同假则假

支持短路,即第一个表达式的结果就可判断整个表达式的结果,则第二个表达式就无需判断

!取反

public class java练习代码 {
    public static void main (String[] args) {
        int num1=15;
        int num2 =1;
        boolean f=(num1<10)&&(num2>2);
        System.out.println(f);
        boolean f2=(num1<10)||(num2>2);
        System.out.println(f2);

        //&& || 支持短路
        boolean f3=(num1<10)||(num2++<3);
        System.out.println(f3);
        System.out.println(num2);
        //取反
        boolean f4=!f3;
        System.out.println(f4);

    }
}

java入门2(运算符)_第4张图片

位运算符(C语言好像没有) 

<< 左移:相当于乘法,乘以2的N次方

>>右移:相当于整除,除以2的N次方

& 按位与 :同1则1,遇0则0

|按位或:有1则1,同0则0

^ 按位异或 :不同为1,相同为0


public class java练习代码 {
    public static void main (String[] args) {
        int a=5;
        int b=5<<1;
        System.out.println(b);  //结果是10
        int c=5>>1;
        System.out.println(c);
        int m=5;
        int n=13;
        System.out.println(m&n);
        int num5=5;
        int num6=13;
        System.out.println(num5^num6); //8
        System.out.println(num5^num6^num6); //5

    }
}

java入门2(运算符)_第5张图片

优先级

先运算,再比较,然后连接,最后赋值

小括号的优先级最高,建议添加小括号增强代码的可读性。

交换算法

方法一:申请临时变量(用的最多)

temp=a;

a=b;

b=temp;

方式二:加减法

a=a+b;

b=a-b;

a=a-b;

 方式三:异或法

a=a^b;

b=a^b;

a=a^b;

你可能感兴趣的:(java,java,servlet,开发语言)