Java的基本語法(1)

一、運算符和表達式

? ? 舉例說明什么是運算符,什么是表達式:

int a = 1;
int b = 2;
int c = a + b;

在這個例子當中,+是運算符,并且是算術運算符

a+b是表達式,因為+是運算符,所以a+b是算術表達式

1.1算術運算符
符號作用
+
-
*
/
%取模,取余

舉例說明除法和取模、取余:

public class ArithmeticDemo2 {public static void main(String[] args){//除法System.out.println(10 / 2);//5System.out.println(10 / 3);//3System.out.println(10.0 / 3);//3.3333333333333335//取模、取余System.out.println(10 % 2);//0System.out.println(10 % 3);//1System.out.println(1234 % 10);//4}
}

取模的應用場景:

  1. 可以用取模來判斷,A是否可以被B整除
  2. 判斷A是否為偶數-->A%2如果是0,則A是偶數;否則A就是奇數
  3. 斗地主發牌中三個玩家,每張牌都定義一個序號;當序號%3為1,發給第一個玩家;結果為2,發給第二個玩家,結果為0,發給第三個玩家

練習:鍵盤上錄入一個三位數,打印輸出個位、十位、百位數字

import java.util.Scanner;public class text1 {public static void main(String[] args){//鍵盤錄入一個三位數,獲取其中的個位、十位、百位//1.鍵盤錄入Scanner sc = new Scanner(System.in);System.out.println("請輸入一個三位數");int number = sc.nextInt();//2.獲取個位、十位、百位//個位:數字%10;//十位:數字/10%10//百位:數字/10/10%10int ge = number % 10;int shi = number / 10 % 10;int bai = number / 100 % 10;System.out.println(ge);System.out.println(shi);System.out.println(bai);}
}
數字相加

數字進行運算時,數據類型不一樣不能運算,需要轉成應用的,才能運算。

類型轉換的分類:

  • 隱式轉換(自動類型提升)把一個取值范圍小的數值,轉成取值范圍大的數據

規則:取值范圍小的,和取值范圍大的進行運算,小的先提升為大的,再進行運算。

? ? ? ? ? byte? short? char三種類型的數據在運算的時候,都會直接先提升為int,然后再進行運算。

  • 強制轉換 -->格式:目標數據類型 變量名 = (目標數據類型)被強轉的數據;
字符串的“+”操作
  • 當“‘+”操作中出現字符串時,這個“+”是字符串連接符,而不是算術運算符。會將前后的數據進行拼接,產生一個新的字符串。
  • 連續進行“+”操作時,從左到右逐個執行。
字符相加

byte、short、char三種類型的數據在運算的時候,都會先提升為int,然后再進行運算

當字符+字符(字符+數字)時,會把字符通過ASCII碼表查詢到對應的數字再計算。

注意事項:

  1. /取結果的商,%取結果的余數
  2. 整數操作只能得到整數,要想得到小數,必須要有浮點數參與運算。

二、自增自減運算符

++和--可以放變量之前也可以之后,單獨寫一行結果是一樣的。

  1. int a = 10;int b = a++;? ? ?先用后加
  2. int a = 10;int b = ++a;? ? ?先加后用

舉例來說:

public class ArithmeticDemo4 {public static void main(String[] args) {int x = 10;//后++:先用后加//先把x變量中的值拿出來用,賦值給y,然后進行自增int y = x++;//x=11  y=10//先++:先加后用//先把x變量中的值自增,然后把結果賦值給zint z = ++x;//x=12  z=12System.out.println("x:" + x);System.out.println("y:" + y);System.out.println("z:" + z);}
}

三、賦值運算符?

分類:

符號作用說明
=賦值int a = 10,將10賦值給變量a
+=加后賦值a+=b,將a+b的值給a
-=減后賦值a-=b,將a-b的值給a
*=乘后賦值a*=b,將a*b的值給a
/=除后賦值a/=b,將a/b的商給a
%=取余后賦值;a%=b,將a/b的余數給a
public class ArithmeticDemo5 {public static void main(String[] args){int a = 10;int b = 20;//把a+b賦值給aa += b;//等同于a = (int)(a+b)System.out.println(a);//30System.out.println(b);//20short s = 1;s += 1;//把s+1賦值給s//等同于s = (short)(s + 1)System.out.println(s);//2}
}

注意:在賦值運算符的底層會進行強制轉換。

四、關系運算符

又被稱作比較運算符,在關系運算符中,運算符的結果都是boolean類型,結果是true或false,沒有其他情況。

五、邏輯運算符

分類:

符號作用說明
&邏輯與(且)并且,兩邊都為真,結果才是真
|邏輯或或者,兩邊都為假,結果才是假
^邏輯異或相同為false,不同為true
邏輯非取反
短路邏輯運算符
  • &&? ? ? ? 短路與? ? ? ? 結果和&相同,但是有短路效果
  • ||? ? ? ? ? ?短路或? ? ? ? 結果和|相同,但是有短路效果

注意事項:

  1. &|,無論左邊true、false,右邊都要執行
  2. &&? ||,如果左邊能確定整個表達式的結果,右邊不執行
  3. &&:左邊為false,右邊不管是真是假,整個表達式的結果一定是false。
  4. ||:左邊為true,右邊不管是真是假,整個表達式的結果一定是true。
  5. 最常用的邏輯運算符:&&,||,!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/77587.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/77587.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/77587.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++學習之密碼學知識

目錄 1.文檔介紹 2.知識點概述 3.項目準備 4.序列化介紹 5.項目中基礎組件介紹 6.基礎模塊在項目中作用 7.項目中其他模塊介紹 8.加密三要素 9.對稱加密和非堆成加密 10.對稱和非對稱加密特點 11.堆成加密算法des 12.des對稱加密算法 13.對稱加密算法aes 14.知識點…

安裝vllm

ubuntu 22.04, RTX3080, cuda 12.1, cudnn 8.9.7,cuda和cudnn的安裝參考:https://blog.csdn.net/m0_52111823/article/details/147154526?spm1001.2014.3001.5501。 查看版本對應關系,下載12.1對應的whl包,https://github.com/vl…

【WPF】自定義控件:ShellEditControl-同列單元格編輯支持文本框、下拉框和彈窗

需要實現表格同一列,單元格可以使用文本框直接輸入編輯、下拉框選擇和彈窗,文本框只能輸入數字,彈窗中的數據是若干位的二進制值。 本文提供了兩種實現單元格編輯狀態下,不同編輯控件的方法: 1、DataTrigger控制控件的…

Gson、Fastjson 和 Jackson 對比解析

目錄 1. Gson (Google) 基本介紹: 核心功能: 特點: 使用場景: 2. Fastjson (Alibaba) 基本介紹: 核心功能: 特點: 使用場景: 3. Jackson 基本介紹: 核心功能…

淺談微信視頻號推薦算法

這次可能會稍微有點干貨,但保證不晦澀~ 一、算法推薦的本質:猜你喜歡 vs 社交綁架? 視頻號的推薦系統本質上在做兩件事: ?預測你的興趣?:通過你的瀏覽、點贊、評論、分享等行為,分析你的偏好。?滿足社交需求?&…

halcon模板匹配(一)create_shape_model_xld

目錄 一、提取剎車盤孔洞輪廓二、形狀模板的創建-設置-訓練-查找三、找到亮的圓孔四、獲得匹配結果五、使用use_polarity進行模板匹配六、計算四個圓對應的矩形框七、創建四個圓對應的模板并查找一、提取剎車盤孔洞輪廓 小技巧總結,使用boundary 函數提取區域邊界,在邊界范圍…

day26圖像處理OpenCV

文章目錄 一、OpenCV1.介紹2.下載3.圖像的表示4.圖像的基本操作4.1圖片讀取或創建4.1.1讀取4.1.2創建 4.2創建窗口4.3顯示圖片4.3.1設置讀取的圖片4.3.2設置顯示多久4.3.3釋放 4.4.保存圖片4.5圖片切片(剪裁)4.6圖片大小調節 5.在圖像中繪值5.1繪制直線5…

零基礎開始學習鴻蒙開發-智能家居APP離線版介紹

目錄 1.我的小屋 2.查找設備 3.個人主頁 前言 好久不發博文了,最近都忙于面試,忙于找工作,這段時間終于找到工作了。我對鴻蒙開發的激情依然沒有減退,前幾天做了一個鴻蒙的APP,現在給大家分享一下! 具體…

C++的*了又*

先看下面一段代碼 class HeapWord {friend class VMStructs;private:char *i; };主函數 #include "HeapWord.hpp" int main() {HeapWord *heapword new HeapWord();HeapWord *p new HeapWord();HeapWord **p1 new HeapWord *();heapword 3;*(HeapWord **)p he…

yolov8在windows系統的C++版本的onnxruntime部署方法

1.各個軟件的的環境需要保持在統一的版本。 onnxruntime需要和cuda的版本對應上,版本號:onnxruntime-win-x64-gpu-1.18.1 ,鏈接: NVIDIA - CUDA | onnxruntime cuda:本機顯卡支持的版本,cuda11.7,鏈接:CUDA Toolkit Archive | NVIDIA Developer cudnn:需要對應到cud…

js chrome 插件,下載微博視頻

修改說明: 代碼資源,免積分下載 起因, 目的: 最初是想下載微博上的NBA視頻,因為在看網頁上看視頻很不方便,快進一次是10秒,而本地 VLC 播放器,快進一次是5秒。另外我還想做點視頻剪輯。 對比…

【vue3】@click函數傳動態變量參數

根據java的學習&#xff0c;摸索了一下vue3 函數傳參的方式。以此作為記錄。有更好的其它方式&#xff0c;可以評論區補充。 <script> const tmpref(); </script><button click"tmpFunction(傳遞參數:tmp)">按鈕</button> // 直接【字符串…

jmeter 集成ZAP進行接口測試中的安全掃描 實現方案

以下是將 JMeter 集成 ZAP(OWASP Zed Attack Proxy)進行接口測試中安全掃描的實現方案: 1. 環境準備 JMeter 安裝:從 JMeter 官方網站(https://jmeter.apache.org/download_jmeter.cgi)下載并安裝 JMeter,確保其版本穩定。ZAP 安裝:從 ZAP 官方網站(https://www.zapr…

全能格式轉換器v16.3.0.159綠色便攜版

前言 全能格式轉換器具有音視頻格式轉換、合并視頻、壓縮視頻、錄制視頻、下載視頻、DVD刻錄等功能。以超快的轉換速度及強大的功能在國外名聲大噪&#xff0c;轉換速度是市面同類產品的30倍&#xff0c;操作簡便&#xff0c;支持158種視頻格式無損轉換&#xff0c;批量轉換高…

【基于開源insightface的人臉檢測,人臉識別初步測試】

簡介 InsightFace是一個基于深度學習的開源人臉識別項目,由螞蟻金服的深度學習團隊開發。該項目提供了人臉檢測、人臉特征提取、人臉識別等功能,支持多種操作系統和深度學習框架。本文將詳細介紹如何在Ubuntu系統上安裝和實戰InsightFace項目。 目前github有非常多的人臉識…

設計一個簡單的權限管理系統

針對大規模服務器集群的權限管理系統設計&#xff0c;需結合 角色分層、最小權限原則 和 動態權限控制 來實現安全高效的權限管理。以下是分階段設計方案&#xff1a; 一、核心設計思路 基于角色的訪問控制&#xff08;RBAC&#xff09; 定義角色層級&#xff08;如董事長 >…

使用 nano 文本編輯器修改 ~/.bashrc 文件與一些快捷鍵

目錄 使用 nano 編輯器保存并關閉文件使用 sed 命令直接修改文件驗證更改 如果你正在使用 nano 文本編輯器來修改 ~/.bashrc 文件&#xff0c;以下是保存并關閉文件的具體步驟&#xff1a; 使用 nano 編輯器保存并關閉文件 打開 ~/.bashrc 文件 在終端中運行以下命令&#xf…

spm12_fMRI 2*4混合方差分析 Flexible factorial 對比矩陣

實驗設計&#xff1a;2*4被試內設計 分析模型&#xff1a;spm 二階分析中的 Flexible factorial 問題&#xff1a;Flexible factorial交互作用對比矩陣如何編寫&#xff1f; 老師&#xff1a;deepseek老師【大神們看看這個矩陣是否可以如下編寫&#xff1f;】 以下是來自de…

用Python修改字體字形與提取矢量數據:fontTools實戰指南

字體設計與分析是NLP和視覺領域的交叉應用&#xff0c;而**fontTools** 是一款強大的Python庫&#xff0c;可以讓我們直接操作字體文件的底層結構。本文將通過兩個實用函數&#xff0c;展示如何修改特定字形和提取所有字形的矢量數據&#xff0c;幫助開發者快速上手字體編輯與分…

Windows 11 PowerShell重定向文本文件的編碼問題

目錄 問題的由來 編碼導致的問題 解決辦法 VSCode進行轉換 記事本進行轉換 直接指定輸出的文本編碼 總結 問題的由來 在我的嵌入式系統的課程中有一個裸機開發的實驗&#xff0c;其中需要把圖片等文件轉換為C語言數組保存在程序中。課程中&#xff0c;我推薦了CodePlea的…