Java基礎語法(3)-運算符

来源:https://www.cnblogs.com/bencoper/archive/2020/03/27/12584019.html

title: Java基礎語法(3) 運算符 blog: "CSDN" data: "Java學習路線及視頻" 1.算術運算符 算術運算符的註意問題 如果對負數取模,可以把模數負號忽略不記,如:5% 2=1。 但被模數是負數則不可忽略。此外,取模運算的結果不一定總是整數。 對於除號“/”,它的整數除 ...


title: Java基礎語法(3)-運算符

blog: CSDN

data: Java學習路線及視頻

1.算術運算符

GPDQrF.png
  • 算術運算符的註意問題
    • 如果對負數取模,可以把模數負號忽略不記,如:5%-2=1。 但被模數是負數則不可忽略。此外,取模運算的結果不一定總是整數。
    • 對於除號“/”,它的整數除和小數除是有區別的:整數之間做除法時,只保留整數部分而捨棄小數部分。 例如:int x=3510;x=x/1000*1000; x的結果是3000;
    • +”除字元串相加功能外,還能把非字元串轉換成字元串.例如:System.out.println(“5+5=”+5+5);列印結果是? 5+5=55

2.賦值運算符

  • 符號:=

    • 當“=”兩側數據類型不一致時,可以使用自動類型轉換或使用強制類型轉換原則進行處理。
    • 支持連續賦值
    • 擴展賦值運算符: +=, -=, *=, /=, %=

3.比較運算符

GPyMKf.png
  • 比較運算符的結果都是boolean型,也就是要麼是true,要麼是false。
  • 比較運算符“==”不能誤寫成“=”

4.邏輯運算符

GP6Wfs.png
  • 邏輯運算符用於連接布爾型表達式,在Java中不可以寫成3<x<6,應該寫成x>3 & x<6 。
  • “&”和“&&”的區別
    • 單&時,左邊無論真假,右邊都進行運算;
    • 雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那麼右邊不參與運算。
  • “|”和“||”的區別同理,||表示:當左邊為真,右邊不參與運算。
  • 異或( ^ )與或( | )的不同之處是:當左右都為true時,結果為false。
  • 異或,追求的是“異”!

5.位運算符

GPcG3n.png

位運算是直接對整數的二進位進行的運算

GPc44H.png

參考位運算符詳解

6.三元運算符

GPgqzR.png
  • 表達式1和表達式2為同種類型
  • 三元運算符與if-else的聯繫與區別
    • 三元運算符可簡化if-else語句
    • 三元運算符要求必須返回一個結果。
    • if後的代碼塊可有多個語句

7.運算符的優先順序

  • 運算符有不同的優先順序,所謂優先順序就是表達式運算中的運算順序 如下表,上一行運算符總優先於下一行
  • 只有單目運算符、三元運算符、賦值運算符是從右向左運算的。
GPRrCQ.png

您的分享是我們最大的動力!

更多相關文章
  • 1. 條件分支語句 1.1. if 語法:if(布爾表達式) if(a==1){ System.out.println("判定成功執行的業務代碼塊..."); } 1.2. if...else... 語法:if(布爾表達式)else if(a==1){ System.out.println("判定成 ...
  • 100個不同類型的python語言趣味編程題 實例011:養兔子 題目 有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少? 此題與趣味演算法第五題是同一題,因此在這裡列出另一種解法,具體分析請看趣味演算法第五題。 程式分析 ...
  • 講 Python 裝飾器前,我想先舉個例子,雖有點污,但跟裝飾器這個話題很貼切。 談裝飾器前,還要先要明白一件事,Python 中的函數和 Java、C++不太一樣,Python 中的函數可以像普通變數一樣當做參數傳遞給另外一個函數,例如: 先來看一個簡單例子,雖然實際代碼可能比這複雜很多: 說到這 ...
  • 補充知識點: 1. 匿名函數(用lambda構建):一語句函數,比較簡單的函數。形式:lambda 參數 : 返回值 + lambda 參數 : 返回值:lambda後直接加形參,形參加多少都可以,但一般只用位置參數,參數之間需要用”,“隔開。 2. 內置函數: + int():將字元串類型轉換為i ...
  • shape函數是numpy.core.fromnumeric中的函數,它的功能是讀取矩陣的長度,比如shape[0]就是讀取矩陣第一維度的長度。它的輸入參數可以使一個整數表示維度,也可以是一個矩陣。這麼說你可能不太理解,我們還是用各種例子來說明他的用法: 一維矩陣[1]返回值為(1L,) 二維矩陣, ...
  • 什麼場景下會有main函數? 當該python腳本被作為模塊(module)引入(import)時,其中的main()函數將不會被執行。 main函數的作用? __ name__ == '__ main__'是Python的main函數入口。並非說,加入這句才能使用python xxx.py來執行, ...
  • 引言 構建分散式系統並不容易。然而,人們日常所使用的應用大多基於分散式系統,在短時間內依賴於分散式系統的現狀並不會改變。ApacheZooKeeper旨在減輕構建健壯的分散式系統的任務。ZooKeeper基於 分散式計算的核心概念而設計,主要目的是給開發人員提供一套容易理解和開發的介面,從而簡化分佈 ...
  • 下麵是互相轉換的代碼: 有想要瞭解更多關於python知識的請在下方評論或私信小編 ...
一周排行
  • 文章篇幅較長,閱讀完大概20min,建議收藏閱讀, 讀完會有收穫。歡迎點贊關註 原文鏈接:https://www.softwaretestinghelp.com/types-of-software-testing/ 有多少軟體測試類型呢? 我們作為測試人員瞭解很多種不同的軟體測試類型,例如功能測試( ...
  • 過場CG: 接到公司領導的文件指示,“小熊”需要在6月底去海外執行一個行動代號為【定時任務】的營救計劃,這個計劃關係到公司某個項目的生死(數據安全漏洞),作戰部擬定兩個作戰方案: 方案一:使用務定時任務框架quartz; 方案二:使用windows Service服務。 最終的作戰方案為:兩者配套使 ...
  • 為什麼編寫TaskSchedulerEx類? 因為.NET預設線程池只有一個線程池,如果某個批量任務一直占著大量線程,甚至耗盡預設線程池,則會嚴重影響應用程式域中其它任務或批量任務的性能。 特點: 1、使用獨立線程池,線程池中線程分為核心線程和輔助線程,輔助線程會動態增加和釋放,且匯流排程數不大於參數 ...
  • 前幾天,公眾號後臺有朋友在問Core的中間件,所以專門抽時間整理了這樣一篇文章。 一、前言 中間件(Middleware)最初是一個機械上的概念,說的是兩個不同的運動結構中間的連接件。後來這個概念延伸到軟體行業,大家把應用操作系統和電腦硬體之間過渡的軟體或系統稱之為中間件,比方驅動程式,就是一個典型 ...
  • 參考文檔: https://www.cnblogs.com/liaods/p/10101513.html https://www.cnblogs.com/zyz-Notes/p/12030281.html 本示例使用MVC項目做演示(不推薦,推薦直接用WebAPI),框架版本使用 4.6.2 為了支 ...
  • 引用NModbus 在NuGet搜索NModbus,添加引用。 封裝ModbusTcp類 public class ModbusTCP { private ModbusFactory modbusFactory; private IModbusMaster master; private TcpCl ...
  • 系列文章 基於 abp vNext 和 .NET Core 開發博客項目 - 使用 abp cli 搭建項目 基於 abp vNext 和 .NET Core 開發博客項目 - 給項目瘦身,讓它跑起來 基於 abp vNext 和 .NET Core 開發博客項目 - 完善與美化,Swagger登場 ...
  • Microsoft.AspNetCore.Mvc.Versioning //引入程式集 .net core 下麵api的版本控製作用不需要多說,可以查閱https://www.cnblogs.com/dc20181010/p/11313738.html 普通的版本控制一般是通過鏈接、header此類 ...
  • 結合 AOP 輕鬆處理事件發佈處理日誌 Intro 前段時間,實現了 EventBus 以及 EventQueue 基於 Event 的事件處理,但是沒有做日誌(EventLog)相關的部分,原本想增加兩個介面, 處理事件發佈日誌和事件處理日誌,最近用了 AOP 的思想處理了 EntityFrame ...
  • 什麼是sam 轉換 Single Abstract Method 實際上這是java8中提出的概念,你就把他理解為是一個方法的介面的就可以了 看一下我們每天都在使用的線程池 ExecutorService executorService= Executors.newScheduledThreadPo ...