java基礎--操作符

來源:互聯網
上載者:User

標籤:rgs   4.4   next   tin   bool   tab   輸出   讀取   二進位   

1.操作符

在Java中操作符有以下幾類:

  • 算術運算子
  • 關係操作符
  • 邏輯運算子
  • 位操作符
  • 賦值操作符
  • 三元操作符

1.1算術運算子

常見的操作符有:+,-,*,/,%,++,--

1.1.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;    }}

1.1.2從鍵盤讀取資料

需要用到從控制台輸入資料,所以需要用到Scanner類,這個類在java.util包中 。

可以使用scanner中的方法:

  • next():讀取一行資料
  • nextLine():讀取一行資料
  • nextInt():讀取一個整型資料
  • 同理還可以是其他類型如nextFloat()等等

例子:從鍵盤輸入兩個數,並輸出他們的和

import java.util.*;public class addNum {    public static void main(String[] args) {        System.out.print("first num:");        int num1=new Scanner(System.in).nextInt();        System.out.print("second num:");        int num2=new Scanner(System.in).nextInt();        System.out.println("the sum is:"+(num1+num2));    }}

1.1.3模數%與取整/

int i=13%2;//i=1
int j=13/2;//j=6

1.1.4自增與自減(++,--)

在原來的基礎上增加1或者減少1

public class HelloWorld {    public static void main(String[] args) {         int i = 5;        i++;        System.out.println(i);//輸出為6     }}

但自增與自減有前置和後置的區別:

前置++:先+1,後取值

後置++:先取值,後+1

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    }}

1.1.6小程式BMI

BMI的計算公式是 體重(kg) / (身高*身高)

import java.util.Scanner;public class BMI {    public static void main(String[] args) {        System.out.print("請輸入你的體重:");        float weight=new Scanner(System.in).nextFloat();        System.out.print("請輸入你的身高:");        float height=new Scanner(System.in).nextFloat();        System.out.println("你的BMI為:"+weight/(height*height));    }}

1.2關係操作符

常見的關係操作符有:>, >= ,< , <= ,,== ,!= 

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        }}

1.3邏輯運算子

常見的邏輯運算子有:&,|,!,&&,||,^

1.3.1與,或,非

與:只有都為真時才為真

或:只要有一個為真則為真

非:取反

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);                  }}

1.3.2&&,||

&&:只要第一個運算式為假,則後面的不用計算,直接為假

||:只要第一個運算式為真,則為真,後面的不用計算

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);                  }}

1.3.3異或^

不同為真,相同為假。

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); //相同返回假     }}

1.4位操作符

常見的位操作符有:&,|,!,^,<<,>>

1.4.1位或|

0|0=0,其他都為1

public class wiehuo {    public static void main(String[] args) {        int i=2,j=3;        System.out.println(Integer.toBinaryString(i));//10        System.out.println(Integer.toBinaryString(j));//11        System.out.println(i|j);//3        System.out.println(Integer.toBinaryString(i|j));//11            }}

Integer.toBinaryString():可以將一個數轉化為2進位

1.4.2位與&

1&1=1,其他為0

public class weiyu {    public static void main(String[] args) {        int i=5,j=6;        System.out.println(Integer.toBinaryString(i));//101        System.out.println(Integer.toBinaryString(j));//110        System.out.println(Integer.toBinaryString(i&j));//100        System.out.println(i&j);//4            }}

1.4.3異或^

相同為0,相異為1.

public class yihuo {    public static void main(String[] args) {        int i=5,j=6;        System.out.println(Integer.toBinaryString(i));//101        System.out.println(Integer.toBinaryString(j));//110        System.out.println(Integer.toBinaryString(i^j));//011        System.out.println(i^j);//3            }}

1.4.4左移,右移

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

public class weiyi {    public static void main(String[] args) {        int i=5;        System.out.println(Integer.toBinaryString(i));//101        System.out.println(Integer.toBinaryString(i<<1));//左移一位1010        System.out.println(Integer.toBinaryString(i>>1));//右移一位10            }}

 

1.5賦值操作符

1.6三元操作符

java基礎--操作符

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.