java與操作
❶ java 邏輯操作(&,|,^)與條件操作(&&,||)有啥區別
(&,|,^)是衛運算符 主要用於二進制的操作
條件操作(&&,||)是對常規類型判斷
❷ JAVA中&&和||是什麼意思怎麼用
JAVA中&&意思是「條件與」邏輯操作符,使用方法是x&&y,功能描述:x和y均為true,取值是true,否則取值是false。
JAVA中||意思是「條件或」邏輯操作符,使用方法是x||y,功能描述:x和y有一個為true,取值是true,否則取值是false。
(2)java與操作擴展閱讀:
JAVA語言中進行邏輯表達式求值運算時,不但要注意邏輯運算符本身的運算規則,而且還必須從最左邊一個計算部分開始,按照邏輯運算的規則計算該部分的值。每計算完一個部分就與該部分右邊緊靠著的邏輯運算符根據真值表進行邏輯值判斷。
在邏輯表達式的求解過程中,任何時候只要邏輯表達式的值已經可以確定,則求解過程不再進行,求解結束。
參考資料來源:
網路——&&
網路——||
❸ java中&和&&的區別
java中的&&具有「短路」現象,也就是說,當&&左邊的表達式為假時,就不再計算版剩餘的&&右邊的值是否為權真。而&則不同,就算&&左邊的表達式是假,它還是會計算&右邊的表達式。
而||和|也是一樣道理的。
希望我的回答能給你點幫助。謝謝
❹ java中&和&&是怎麼運算的
& 和 && 相同點:
都表示「與」操作。這里的「與」和數學中的「與或非」中的「與」意義相同,都遵循「一假必假」原則。即「與」符號兩邊的元素只要有一個為假,"與"操作執行後的結果就為假。
& 和 && 的區別:
1)& 表示「按位與",這里的」位「是指二進制位(bit)。
例:十進制數字8 轉化為二進制是:1000 ;數字9 轉化為二進制是1001 。
則如有以下程序:
public class Test {
public static void main(String[] args) {
System.out.println(9 & 8);
}
}
輸出結果應該是:8
原因:1001 & 1000 = 1000 。 計算機中一般1表示真,0表示假。最左邊一位1&1=1,最右邊一位1&0 = 0.
2) && 表示邏輯」與「 ,即java中的boolean值才可以存在於&&符號的左右兩側。
true && false = false ,true && true = true , 依舊是"一假必假"。
值的注意的是:&& 符號有所謂的「短路原則」,當 A && B 出現時,如果A經判斷是假,那麼B表達式將不會獲得執行或被判斷的機會。直接結果就為假。
註:關於十進制與二進制的轉換,簡單的說每四位可以遵循」8421「原則,1001即8+1=9,1011即8+2+1=11
❺ JAVA中的「>>」和「>>>」運算符
1、>>:右移運算復符,num >> 1,相當制於num除以2。
按二進制形式把所有的數字向右移動對應位數,低位移出(舍棄),高位的空位補符號位,即正數補零,負數補1。符號位不變。
如:-1在32位二進制中表示為:11111111 11111111 11111111 11111111,-1>>1:按位右移,符號位不變,仍舊得到11111111 11111111 11111111 11111111,因此值仍為-1
2、>>>:二進制右移補零操作符,左操作數的值按右操作數指定的位數右移,移動得到的空位以零填充,如value>>>num中,num指定要移位值value移動的位數。
(5)java與操作擴展閱讀
「>>」和「>>>」等移位運算符的運算規則:
1、無符號右移,忽略符號位,空位都以0補齊。
value>>>a,a是要移位值value移動的位數。
無符號右移的規則只記住一點:忽略了符號位擴展,0補最高位無符號右移運算符>>>只是對32位和64位的值有意義。
2、右移位運算符>>,若操作的值為正,則在高位插入0;若值為負,則在高位插入1。
右移補零操作符>>>,無論正負,都在高位插入0。
❻ java中邏輯操作與條件操作的區別
if(1==2&2==2)程序執行時即便1=2是false了,但是還會比較2==2
if(1==2&&2==2),1==2是false,就不會比較2==2了
❼ java中的點操作符怎麼調用屬性和方法
new 是創建對象專用。它唯一的作用就是創建對象,沒別的用途了。
語法是 new 構造方法(...) 或者 new 數組名[長度],new 數組名[長度][長度](可以是多維的數組,數組也是對象)。
點是用來訪問一個對象的成員的(包括成員屬性、成員方法),例如 對象.成員屬性 或者 對象.成員方法()
點也可以作用於類,可以訪問類屬性 和 類方法。例如 類名.類屬性 或者 類.類方法()
--------------------------------------------------
提醒樓主及時處理問題,有滿意答案請點贊,沒有請及時補充問題或追問。此外我不太歡迎匿名提問,這種問題又不涉及隱私,完全沒有匿名的必要。
❽ java是怎樣實現與操作平台無關的
主要是說與操作系統無關,Java源代碼都先編譯為.class文件,這種文件格式是與操作系統無關的,但它需要在虛擬機(JVM)上運行,而虛擬機是和平台有關的,也就是說Linux上、winxp 或 win7 64位的虛擬機是不同的,你可以從oracle網站上看到不同的JRE, JDK,它帶的JVM不一樣。
但是.class文件一樣,所以你帶著一份.class文件,就可以在任何安了JVM的機器上運行,不管它上面是哪種操作系統。
❾ java程序與操作系統API的關系
JAVA的JDK和API的區別是:
1、Java好比房子,API好比土地,JDK好比開發商的關系。
2、 JDK與API都是為了JAVA,互依互存,又各自獨立,只有共同才能創造價值。
一、全稱:
1、JDK:Java Development Kit 。
2、API:Application Programming Interface 。
二、概念:
1、Java:是一種可以撰寫跨平台應用軟體的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
2、JDK:
(1)、JDK是Sun Microsystems針對Java開發員的產品。JDK本身使用了Java語言編寫。簡單的說JDK是面向開發人員使用的SDK,它提供了Java的開發環境和運行環境。SDK是Software Development Kit 一般指軟體開發包,可以包括函數庫、編譯程序等。
(2)、 自從Java推出以來,JDK已經成為使用最廣泛的Java SDK(Software development kit)。
3、API:
(1)、API是應用程序編程介面。
(2)、 是一些預先定義的函數,目的是提供應用程序與開發人員基於某軟體或硬體的以訪問一組常式的能力,而又無需訪問源碼,或理解內部工作機制的細節。
三、作用:
1、JDK:
(1)、jdk是 Java 語言的軟體開發工具包。主要用於移動設備、嵌入式設備上的java應用程序。
(2)、JDK 是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一堆Java工具和Java基礎的類庫(rt.jar)。
(3)、不論什麼Java應用伺服器實質都是內置了某個版本的JDK。
2、API:
(1)、運行Java程序時,虛擬機裝載程序的class文件所使用的Java API class文件。
(2)、ava API在Java安全性模型方面也有貢獻。當Java API的方法進行任何有潛在危險的操作(比如進行本地磁碟寫操作)之前,都會通過查詢訪問控制器來檢驗是否得到了授權。訪問控制器是一個類,該類用來執行棧檢驗,已決定是否允許某種操作。
四、其它:
1、JDK:
(1)、JDK包含的基本組件包括:javac – 編譯器、jar – 打包工具、javadoc – 文檔生成器、jdb – debugger-查錯工具、java – 運行編譯後的java程序、appletviewer-小程序瀏覽器、Javap-Java反匯編器、Jconsole: Java進行系統調試和監控的工具等。
(2)、jdk1.8新特性:
(1)、Java 8允許我們給介面添加一個非抽象的方法實現,只需要使用 default關鍵字即可。
(2)、新增lambda表達式
(3)、提供函數式介面
(4)、Java 8 允許你使用 :: 關鍵字來傳遞方法或者構造函數引用
(5)、我們可以直接在lambda表達式中訪問外層的局部變數。
2、API:組成及特點:
(1)、所有被裝載的class文件(包括從應用程序中和從Java API中提取的)和所有已經裝載的動態庫(包含本地方法)共同組成了在Java虛擬機上運行的整個程序。
(2)、在一個平台能夠支持Java程序以前,必須在這個特定平台上明確地實現API的功能。
(3)、為訪問主機上的本地資源,Java API調用了本地方法。
(4)、由於Java API class文件調用了本地方法,Java程序就不需要再調用它們了。
(5)、通過這種方法,Java API class文件為底層主機提供了具有平台無關性、標准介面的Java程序。
(6)、對Java程序而言,無論平台內部如何,Java API都會有同樣的表現和可預測的行為。
(7)、正是由於在每個特定的主機平台上明確地實現了Java虛擬機和Java API,因此,Java程序自身就能夠成為具有平台無關性的程序。
❿ Java:二進制的按位與操作怎麼做求助大神!
//先用鏈接中的方法,把Stringa,b分別轉換成byte[]數組data_a和data_b
byte[]data_a=hex2byte(a);
byte[]data_b=hex2byte(b);
byte[]data_c=newbyte[a.length];//結果串
//逐個直接進行位與運算()
for(inti=0;i<a.Length;i++){
data_c[i]=data_a[i]&data_b[i];
}
//此時data_c中就是按位與結果,再轉換成字元串
Stringc=byte2hex(data_c);
//c便是結果字元串。