java零基礎教學------操做符

更多免費內容,點擊瞭解:https://how2j.cn/k/operator/operator-arithmetic/265.htmlhtml

目錄java

操做符系列教材 (一)- Java的算數操做符ide

示例 1 : 基本算數操做符學習

示例 2 : 任意運算單元的長度超過int3d

示例 3 : 任意運算單元的長度小於intcode

示例 4 : %取模htm

示例 5 : 自增 自減blog

示例 6 : 自增 自減操做符置前以及置後的區別字符串

操做符系列教材 (二)- Java的關係操做符get

示例 1 : 關係操做符

操做符系列教材 (三)- Java的邏輯運算符

示例 1 : 長路與 和 短路與

示例 2 : 長路或 和 短路或

示例 3 : 取反

示例 4 : 異或^

操做符系列教材 (四)- Java的位操做符

示例 1 : 一個整數的二進制表達

示例 2 : 位或

示例 3 : 位與

示例 4 : 異或

示例 5 : 取非

示例 6 : 左移 右移

示例 7: 帶符號右移與無符號右移

操做符系列教材 (五)- Java的賦值操做符

示例 1 : 賦值操做

示例 2 : 對自己進行運算,並賦值

操做符系列教材 (六)- Java的三元操做符

示例 1 : 三元操做符

操做符系列教材 (七)- 使用Scanner讀取整數

步驟 1 : 使用Scanner讀取整數

步驟 2 : 使用Scanner讀取浮點數

步驟 3 : 使用Scanner讀取字符串

步驟 4 : 讀取了整數後,接着讀取字符串


操做符系列教材 (一)- Java的算數操做符

算數操做符 
基本的有: 

+ - * / %


自增 自減 

++ --

示例 1 : 基本算數操做符

+ - * /


基本的加 減 乘 除

public class HelloWorld {

    public static void main(String[] args) {

        int i = 10;

        int j = 5;

        int a = i+j;

        int b = i - j;

        int c = i*j;

        int d = i /j;

    }

}

示例 2 : 任意運算單元的長度超過int

若是有任何運算單元的長度超過int,那麼運算結果就按照最長的長度計算 
好比 
int a = 5; 
long b = 6; 
a+b -> 結果類型是long

public class HelloWorld {

    public static void main(String[] args) {

 

        int a = 5;

        long b = 6;

        int c = (int) (a+b); //a+b的運算結果是long型,因此要進行強制轉換

        long d = a+b;

         

    }

}

示例 3 : 任意運算單元的長度小於int

若是任何運算單元的長度都不超過int,那麼運算結果就按照int來計算 
byte a = 1; 
byte b= 2; 
a+b -> int 類型

public class HelloWorld {

    public static void main(String[] args) {

        byte a = 1;

        byte b= 2;

        byte c = (byte) (a+b); //雖然a b都是byte類型,可是運算結果是int類型,須要進行強制轉換

        int d = a+b;

    }

}

示例 4 : %取模

% 取餘數,又叫取模 
5除以2,餘1

public class HelloWorld {

    public static void main(String[] args) {

 

        int i = 5;

        int j = 2;

        System.out.println(i%j); //輸出爲1

    }

}

示例 5 : 自增 自減

++ 
-- 
在原來的基礎上增長1或者減小1

public class HelloWorld {

    public static void main(String[] args) {

 

        int i = 5;

        i++;

        System.out.println(i);//輸出爲6

 

    }

}

示例 6 : 自增 自減操做符置前以及置後的區別

以++爲例 
int i = 5; 
i++; 先取值,再運算 
++i; 先運算,再取值

public class HelloWorld {

    public static void main(String[] args) {

        int i = 5;

        System.out.println(i++); //輸出5

        System.out.println(i);   //輸出6

         

        int j = 5;

        System.out.println(++j); //輸出6

        System.out.println(j);   //輸出6

    }

}

操做符系列教材 (二)- Java的關係操做符

關係操做符:比較兩個變量之間的關係 
> 大於 
>= 大於或等於 
< 小於 
<= 小於或等於 
== 是否相等 
!= 是否不等 

 

示例 1 : 關係操做符

> 大於
>= 大於或等於
< 小於
<= 小於或等於
== 是否相等
!= 是否不等

public class HelloWorld {

    public static void main(String[] args) {

       int a = 5;

       int b = 6;

       int c = 5;

        

       System.out.println(a>b);  //返回 false

       System.out.println(a>=c);  //返回 true

        

       System.out.println(a==b); //返回false

       System.out.println(a!=b);//返回true

        

}

}

操做符系列教材 (三)- Java的邏輯運算符

邏輯運算符

示例 1 : 長路與 和 短路與

不管長路與仍是短路與
兩邊的運算單元都是布爾值
都爲真時,才爲真
任意爲假,就爲假
區別
長路與 兩側,都會被運算
短路與 只要第一個是false,第二個就不進行運算了

長路與 和 短路與

 

長路與 和 短路與

public class HelloWorld {

    public static void main(String[] args) {

        //長路與  不管第一個表達式的值是true或者false,第二個的值,都會被運算

        int i = 2;

        System.out.println( i== 1 & i++ ==2  ); //不管如何i++都會被執行,因此i的值變成了3

        System.out.println(i);

         

        //短路與 只要第一個表達式的值是false的,第二個表達式的值,就不須要進行運算了

        int j = 2;

        System.out.println( j== 1 && j++ ==2  );  //由於j==1返回false,因此右邊的j++就沒有執行了,因此j的值,仍是2

        System.out.println(j);     

         

    }

}

示例 2 : 長路或 和 短路或

不管長路或仍是短路或
兩邊的運算單元都是布爾值
都爲假時,才爲假
任意爲真,就爲真
區別
長路或 兩側都會被運算
短路或 只要第一個是true的,第二個就不進行運算了

長路或 和 短路或

 

public class HelloWorld {

    public static void main(String[] args) {

        //長路或  不管第一個表達式的值是true或者false,第二個的值,都會被運算

        int i = 2;

        System.out.println( i== 1 | i++ ==2  ); //不管如何i++都會被執行,因此i的值變成了3

        System.out.println(i);

         

        //短路或 只要第一個表達式的值是true的,第二個表達式的值,就不須要進行運算了

        int j = 2;

        System.out.println( j== 2 || j++ ==2  );  //由於j==2返回true,因此右邊的j++就沒有執行了,因此j的值,仍是2

        System.out.println(j);     

         

    }

}

示例 3 : 取反

取反! 
真變爲假 
假變爲真

public class HelloWorld {

    public static void main(String[] args) {

        boolean b = true;

         

        System.out.println(b); //輸出true

        System.out.println(!b);//輸出false

         

    }

}

示例 4 : 異或^

異或^ 
不一樣,返回真 
相同,返回假

異或^

 

public class HelloWorld {

    public static void main(String[] args) {

        boolean a = true;

        boolean b = false;

         

        System.out.println(a^b); //不一樣返回真

        System.out.println(a^!b); //相同返回假

 

    }

}

操做符系列教材 (四)- Java的位操做符

位操做符在實際工做中用的並不常見,可是同窗們老是很喜歡糾結這些位操做。 

因此本章節會給出每個操做符的操做實例幫助你們理解其具體含義。 

最後說,若是確實感興趣,就看看,我的建議跳過這個章節。 真正工做用到了,再來看。

示例 1 : 一個整數的二進制表達

位操做都是對二進制而言的,可是咱們日常使用的都是十進制好比5。
而5的二進制是101。
因此在開始學習以前,須要掌握一個整數的二進制表達是多少。
經過Integer.toBinaryString() 方法,將一個十進制整數轉換爲一個二進制字符串

一個整數的二進制表達

public class HelloWorld {

    public static void main(String[] args) {

        int i = 5;

        String b = (Integer.toBinaryString(i)); // 5的二進制的表達101

        System.out.println(i+" 的二進制表達是: "+b);

    }

}

示例 2 : 位或

5的二進制是101 
6的二進制是110 
因此 5|6 對每一位進行或運算,獲得 111->7

public class HelloWorld {

    public static void main(String[] args) {

         

        int i  =5;

        int j = 6;

         

        System.out.println(Integer.toBinaryString(i)); //5的二進制是101

         

        System.out.println(Integer.toBinaryString(j)); //6的二進制是110

         

        System.out.println(i|j); //因此 5|6 對每一位進行或運算,獲得 111->7

 

    }

}

示例 3 : 位與

5的二進制是101 
6的二進制是110 
因此 5&6 對每一位進行與運算,獲得 100->4

public class HelloWorld {

    public static void main(String[] args) {

         

        int i  =5;

        int j = 6;

         

        System.out.println(Integer.toBinaryString(i)); //5的二進制是101

         

        System.out.println(Integer.toBinaryString(j)); //6的二進制是110

         

        System.out.println(i&j); //因此 5&6 對每一位進行與運算,獲得 100->4

 

    }

}

示例 4 : 異或

5的二進制是101
6的二進制是110
因此 5^6 對每一位進行異或運算,獲得 011->3

一些特別狀況:
任何數和本身進行異或 都等於 0
任何數和0 進行異或 都等於本身

public class HelloWorld {

    public static void main(String[] args) {

        int i  =5;

        int j = 6;

        System.out.println(Integer.toBinaryString(i)); //5的二進制是 101

        System.out.println(Integer.toBinaryString(j)); //6的二進制是110

        System.out.println(i^j); //因此 5^6 對每一位進行或運算,獲得 011->3

         

        System.out.println(i^0);

        System.out.println(i^i);

    }

}

示例 5 : 取非

5 的二進制是 00000101
因此取反即爲 11111010
這個二進制換算成十進制即爲-6

public class HelloWorld {

    public static void main(String[] args) {

        byte i  =5;

         

        System.out.println(Integer.toBinaryString(i)); //5的二進制是00000101,因此取非即爲11111010,即爲-6

         

        System.out.println(~i);

         

    }

     

}

示例 6 : 左移 右移

左移:根據一個整數的二進制表達,將其每一位都向左移動,最右邊一位補0
右移:根據一個整數的二進制表達,將其每一位都向右移動

public class HelloWorld {

    public static void main(String[] args) {

        byte i  =6;

         

        //6的二進制是110

        System.out.println(Integer.toBinaryString(i));

        //6向左移1位後,變成1100,對應的10進制是12

        System.out.println(i<<1);

        //6向右移1位後,變成11,對應的10進制是3

        System.out.println(i>>1);

    }

     

}

示例 7: 帶符號右移與無符號右移

帶符號右移 >>
對於正數, 帶符號右移 >> 會把全部的位右移,並在最前面補0
對於負數, 帶符號右移 >> 會把全部的位右移,並在最前面補1
無符號右移>>>
若是是一個負數,那麼對應的二進制的第一位是1
無符號右移>>>會把第一位的1也向右移動,致使移動後,第一位變成0
這樣就會使得負數在無符號右移後,獲得一個正數

簡單的說:
帶符號右移 >> 移動後正的仍是正的,負的仍是負的,符號不變
無符號右移>>>移動後,變正的了

public class HelloWorld {

    public static void main(String[] args) {

        int i  =-10;

         

        //-10的二進制是11111111111111111111111111110110

        //第一位是1,即符號位,表明這是一個負數

        System.out.println(Integer.toBinaryString(i));

         

        //對於正數, 帶符號右移 >> 會把全部的位右移,並在最前面補0

        //對於負數, 帶符號右移 >> 會把全部的位右移,並在最前面補1

         

        //-10帶符號右移1位,移動後前面補齊1

        //獲得11111111111111111111111111111011

        //由於第一位是1,因此依然是一個負數,對應的十進制是-5

        int j = i>>1;

        System.out.println(Integer.toBinaryString(j));

        System.out.println(j);

         

        //-10無符號向右移1位,符號位也會向右移,第一位就變成了0

        //獲得01111111111111111111111111111011,對應的十進制是2147483643

        int k = i>>>1;

        System.out.println(Integer.toBinaryString(k));     

         

        System.out.println(k);

    }

     

}

操做符系列教材 (五)- Java的賦值操做符

賦值操做

示例 1 : 賦值操做

賦值操做的操做順序是從右到左 
int i = 5+5; 
首先進行5+5的運算,獲得結果10,而後把10這個值,賦給i

public class HelloWorld {

    public static void main(String[] args) {

        int i = 5+5;

    }

}

示例 2 : 對自己進行運算,並賦值

+=即自加
i+=2;
等同於
i=i+2;
其餘的 -= , *= , /= , %= , &= , |= , ^= , >>= , >>>= 都是相似,不作贅述

public class HelloWorld {

    public static void main(String[] args) {

        int i =3;

        i+=2;

        System.out.println(i);

         

        int j=3;

        j=j+2;

        System.out.println(j);     

 

    }

}

操做符系列教材 (六)- Java的三元操做符

三元操做符 
?:

示例 1 : 三元操做符

表達式?值1:值2
若是表達式爲真 返回值1
若是表達式爲假 返回值2

關於if語句的詳解講解在後面章節

public class HelloWorld {

    public static void main(String[] args) {

 

        int i = 5;

        int j = 6;

 

        int k = i < j ? 99 88;

 

        // 至關於

        if (i < j) {

            k = 99;

        else {

            k = 88;

        }

 

        System.out.println(k);

 

    }

}

操做符系列教材 (七)- 使用Scanner讀取整數

截至目前爲止,學習了使用System.out.println("") 向控制檯輸出數據。 

在接下來的練習中,須要用到從控制檯輸入數據,因此須要用到Scanner類

步驟 1 : 使用Scanner讀取整數

注意: 使用Scanner類,須要在最前面加上

import java.util.Scanner;


表示導入這個類,纔可以正常使用

使用Scanner讀取整數

import java.util.Scanner;

 

public class HelloWorld {

    public static void main(String[] args) {

        Scanner s = new Scanner(System.in);

        int a = s.nextInt();

        System.out.println("第一個整數:"+a);

        int b = s.nextInt();

        System.out.println("第二個整數:"+b);

    }

}

步驟 2 : 使用Scanner讀取浮點數
使用Scanner讀取浮點數

import java.util.Scanner;

  

public class HelloWorld {

    public static void main(String[] args) {

        Scanner s = new Scanner(System.in);

        float a = s.nextFloat();

        System.out.println("讀取的浮點數的值是:"+a);

 

    }

}

步驟 3 : 使用Scanner讀取字符串

使用Scanner讀取字符串

import java.util.Scanner;

  

public class HelloWorld {

    public static void main(String[] args) {

        Scanner s = new Scanner(System.in);

        String a = s.nextLine();

        System.out.println("讀取的字符串是:"+a);

    }

}

步驟 4 : 讀取了整數後,接着讀取字符串

須要注意的是,若是在經過nextInt()讀取了整數後,再接着讀取字符串,讀出來的是回車換行:"\r\n",由於nextInt僅僅讀取數字信息,而不會讀取回車換行"\r\n".

因此,若是在業務上須要讀取了整數後,接着讀取字符串,那麼就應該連續執行兩次nextLine(),第一次是取走回車換行,第二次纔是讀取真正的字符串

讀取了整數後,接着讀取字符串

import java.util.Scanner;

   

public class HelloWorld {

    public static void main(String[] args) {

        Scanner s = new Scanner(System.in);

        int i = s.nextInt();

        System.out.println("讀取的整數是"+ i);

        String rn = s.nextLine();

        String a = s.nextLine();

        System.out.println("讀取的字符串是:"+a);

    }

}


更多內容,點擊瞭解: https://how2j.cn/k/operator/operator-scanner/658.html

相關文章
相關標籤/搜索