激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

香港云服务器
服務器之家 - 編程語言 - JAVA教程 - Java語法基礎之運算符學習筆記分享

Java語法基礎之運算符學習筆記分享

2020-06-12 15:38生命壹號 JAVA教程

這篇文章主要為大家分享了Java語法基礎之運算符學習筆記,具有一定的參考價值,感興趣的小伙伴們可以參考一下

一、運算符

運算符包括下面幾種:

算術運算符賦值運算符比較運算符邏輯運算符位運算符三目運算符

最不常用的是位運算符,但也是最接近計算機底層的。

1、算術運算符

Java語法基礎之運算符學習筆記分享

(1)+的幾種用法:加法、正數(shù)、字符串連接符

(2)除法的時候要注意一個問題:整數(shù)相除,只能得到整數(shù)。要想得到小數(shù),可以將數(shù)據(jù)自身*1.0,即將數(shù)據(jù)自身先轉換為浮點型。

2、賦值運算符

符號 = += -= *= /= %=

注:=為基本的賦值運算符,其他的為擴展的賦值運算符

面試題:

(1)short s=1, s = s+1;

(2) short s=1, s+=1;

上面兩個代碼有沒有問題,如果有,哪里有問題?

答案:代碼(1)是有錯誤的,會損失精度,byte,short在定義的時候,他們接收的其實是一個int類型的值。這個是自己做了一個數(shù)據(jù)檢測的,如果不再它們的范圍內,就報錯。效果如下:

Java語法基礎之運算符學習筆記分享

代碼(2)沒有錯誤,因為:擴展的賦值運算符其實隱含了一個強制類型轉換。

也就是說,i += 1; 不是等價于 i = i + 1; 而是等價于 i = (i的數(shù)據(jù)類型)(s + 1);

Java語法基礎之運算符學習筆記分享

3、關系運算符

Java語法基礎之運算符學習筆記分享

注1:比較運算符的結果都是boolean型,也就是要么是true,要么是false。

注2:比較運算符“==”不能誤寫成“=” 。舉例:

Java語法基礎之運算符學習筆記分享

4、邏輯運算符

Java語法基礎之運算符學習筆記分享

(1)邏輯運算符用于連接布爾型表達式,在Java中不可以寫成3<x<6,應該寫成x>3 & x<6 。

(2)“&”和“&&”的區(qū)別?同理, “|”和“||”的區(qū)別?

A:最終結果都一樣。例如:A和B必須同時為真,A&B、A&&B的結果才為真。B:&&具有短路效果,左邊是false,右邊不執(zhí)行。||具有短路效果,左邊是true,右邊不執(zhí)行。

注:開發(fā)中常用的邏輯運算符: &&,||,!

(3)異或( ^ )與或( | )的不同之處是:當左右都為true時,異或的結果為false。

5、位運算符:

Java語法基礎之運算符學習筆記分享

雖然開發(fā)中用的不多,但會在很多源碼中看到,因為計算機底層的計算都是位運算。

面試題1:實現(xiàn)兩個整數(shù)變量的交換

代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
  面試題:請自己實現(xiàn)兩個整數(shù)變量的交換
*/
class OperatorTest {
  public static void main(String[] args) {
    int a = 10;
    int b = 20;
    
    System.out.println("a:"+a+",b:"+b);
    
    //方式1:使用第三方變量(開發(fā)中用的)   
    int c = a;
    a = b;
    b = c;
    System.out.println("a:"+a+",b:"+b);
    System.out.println("------------");
    
    
    //方式2:用位異或實現(xiàn)(面試用)
    //左邊:a,b,a
    //右邊:a ^ b   
    a = a ^ b;
    b = a ^ b; //a ^ b ^ b = a
    a = a ^ b; //a ^ b ^ a = b
    System.out.println("a:"+a+",b:"+b);
    
    
    //方式3:用變量相加的做法   
    a = a + b; //a=30
    b = a - b; //b=10
    a = a - b; //a=20
    System.out.println("a:"+a+",b:"+b);
    *
    
    //方式4:一句話搞定
    b = (a+b) - (a=b); //b=30-20=10,a=20
    System.out.println("a:"+a+",b:"+b);
  }
}

面試題2:請用最有效率的方式寫出計算2乘以8的結果。

答案:2 * 8等價于2 << 3

知識回顧:

<<:左移 左邊最高位丟棄,右邊補齊0 >>:右移 最高位是0,左邊補齊0;最高為是1,左邊補齊1 >>>:無符號右移 無論最高位是0還是1,左邊補齊0

6、三目運算符:

格式:(關系表達式)?表達式1:表達式2;

如果條件為true,運算后的結果是表達式1;

如果條件為false,運算后的結果是表達式2;

示例:

獲取兩個數(shù)中大數(shù):

 

復制代碼 代碼如下:
int x=3,y=4,z;z = (x>y)?x:y;//z變量存儲的就是兩個數(shù)的大數(shù)。

 

獲取三個整數(shù)中的最大值:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
//方式一:分兩步
    //A:先比較a,b的最大值
    //B:拿a,b的最大值在和c進行比較
    int temp = ((a > b)? a: b);
    //System.out.println(temp);
    int max1 = (temp > c? temp: c);
    System.out.println("max1:"+max1);
    
    //方式二:一步搞定
    int max2 = (a > b)?((a > c)? a: c):((b > c)? b: c);
    //這種做法不推薦:
    //int max2 = a > b?a > c? a: c:b > c? b: c;
    //System.out.println("max2:"+max2);

建議用方式一 。另外,方式二中,第10行和第12行是一樣的,是三目運算符的嵌套使用。

比較兩個整數(shù)是否相等:

?
1
2
3
4
5
6
7
//比較兩個整數(shù)是否相等
    int m = 100;
    int n = 200;
    
    //boolean flag = (m == n)? true: false;
    boolean flag = (m == n);
    System.out.println(flag);

二 、鍵盤錄入數(shù)據(jù)

我們目前在寫程序的時候,數(shù)據(jù)值都是固定的,但是實際開發(fā)中,數(shù)據(jù)值肯定是變化的,所以,我準備把數(shù)據(jù)改進為鍵盤錄入,提高程序的靈活性。

如何實現(xiàn)鍵盤錄入數(shù)據(jù)呢?(目前先記住使用)

(1)導包(位置放到class定義的上面):import java.util.Scanner;

(2)創(chuàng)建鍵盤錄入對象:Scanner sc = new Scanner(System.in);

(3)通過對象獲取數(shù)據(jù):int x = sc.nextInt();

代碼舉例:

Java語法基礎之運算符學習筆記分享

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文地址:https://www.cnblogs.com/qianguyihao/p/4143725.html

延伸 · 閱讀

精彩推薦
488
主站蜘蛛池模板: 国产一区成人 | 色婷婷久久久亚洲一区二区三区 | 国产精品免费视频观看 | 特级无码毛片免费视频尤物 | 成人午夜一区二区 | 在线观看国产网站 | 国产色视频一区 | 黄色av免费网站 | 欧美精品99 | 欧美日韩亚洲精品一区二区三区 | av噜噜在线 | 久久久久性视频 | 国产精品视频免费网站 | 播色网| 曰韩一二三区 | 国产成人午夜高潮毛片 | 在线观看av国产一区二区 | 国产69精品久久久久久久久久 | 色婷婷av一区二区三区久久 | 亚洲国产成人久久成人52 | 日本人乱人乱亲乱色视频观看 | 日韩在线激情 | 国产精品九九久久一区hh | 久久精品无码一区二区三区 | 精品人伦一区二区三区蜜桃网站 | 亚洲精品欧美一区二区三区 | 97久久精品一区二区三区观看 | 12av电影 | 一本色道久久综合狠狠躁篇适合什么人看 | 欧美一区二区三区久久精品视 | 亚洲国产午夜精品 | 免费国产精品视频 | 在线亚洲欧美 | 日韩大片在线永久观看视频网站免费 | 成人久久 | 视频一区二区中文字幕 | 国产一区二区三区视频免费 | 91久久国产露脸精品国产护士 | 精品偷拍久久 | 欧美一级黄 | 免费黄色在线电影 |