1. 程式人生 > >Java 中Long的值大小比較

Java 中Long的值大小比較

java.util.Lang 物件吧,而不是基本型別 long  (注意大小寫)
Java中如果使用 == 雙等於比較物件,等於比較的是兩個物件的記憶體地址,也就是比較兩個物件是否是同一個物件
如果比較兩個Long物件值是否相等,則不可以使用雙等號進行比較,可以採用如下方式:
1. 使用 equals 方法
        Long a = new Long(3);
        Long b = new Long(3);
        System.out.println(a.equals(b));
2. 使用 Long 型別中的 longValue() 方法進行比較,如

        Long a = new Long(3);
        Long b = new Long(3);

System.out.println(a.longValue()==b.longValue());

因為Long為long的封裝物件型別,因此比較大小的時候不能用'=='

喜歡的朋友可以掃描我的個人公眾號,有好東西可以一起分享。免費獲取各種學習視訊、原始碼、PPT資料

也可以微信搜尋公眾號:Java程式設計師那些事

相關推薦

JAVALong與Integer比較容易犯的錯誤

今天使用findbugs掃描專案後發現很多高危漏洞,其中非常常見的一個是比較兩個Long或Integer時直接使用的==來比較。 其實這樣是錯誤的。 因為Long與Ineger都是包裝型別,是物件。  而不是普通型別long與int , 所以它們在比較時必須都應該用equ

JAVALong與Integer 比較的誤區

今天使用findbugs掃描專案後發現很多高危漏洞,其中非常常見的一個是比較兩個Long或Integer時直接使用的==來比較。 其實這樣是錯誤的。 因為Long與Ineger都是包裝型別,是物件。  而不是普通型別long與int , 所以它們在比較時必須都應該用eq

JAVA的時間大小比較

1.時間的比較 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DateTes

Java Long大小比較

java.util.Lang 物件吧,而不是基本型別 long (注意大小寫) Java中如果使用 == 雙等於比較物件,等於比較的是兩個物件的記憶體地址,也就是比較兩個物件是否是同一個物件 如果比

javaLong,Interger等引用型別的大小比較問題

一枚java小白在上路階段遇到這樣一個問題(大佬可以直接點右上角的小叉叉),簡單描述如下: 註釋即為輸出結果,對小白來說很奇怪,這也就是為什麼有時對大寫字母開頭的型別直接 == 比較時,結果忽對忽錯。 在回答上面問題之前,我首先批判一下自己,什麼大寫字母開頭的

javaLong型別比較大小long型別的比較大小

今天遇到這樣一個問題,我用 "=="來比較兩個Long型別的資料,明明數值都相等,可是結果就是false 兩個 Long 型別

JavaInteger和int比較大小出現的錯誤

最好 裏的 pan 轉換 als 範圍 urn 返回 錯誤 Java在某一處維護著一個常量池,(我記得)在小於128的範圍內,直接用 1 Integer i = 100; 2 int j = 100; 3 return i == j;//true 這裏返回的是true.

javalong類型的比較

bsp best () 重新 info int 存儲 最大 equal int類型最大存儲10位,因此很多地方要用到long類型,它的存儲位數是+-19位 範圍:-9223372036854775808到9223372036854775807解釋:long類型是64位的也就

java兩個字串比較大小

java程式設計中經常遇到需要比較兩個字串比較大小的需求, 字串一般分成兩類: 第一類:純數字的字串,如日期轉換的字串 第二類:非純數字的字串。 直接用字串類的compareTo方法: 如: 兩個字串: String str1="20141011"; String st

JAVA只有傳遞

http 自己的 分享 傳遞 uil string 論戰 顯示 主函數 今天,我在一本面試書上看到了關於java的一個參數傳遞的問題: 寫道 java中對象作為參數傳遞給一個方法,到底是值傳遞,還是引用傳遞? 我毫無疑問的回答:“引用傳遞!”,並且還覺得自己對java的這

【轉載】JavaComparable和Comparator比較

import 比較器 todo itl 復制代碼 ack div array open 【本文轉自】http://www.cnblogs.com/skywang12345/p/3324788.html Comparable 簡介 Comparable 是排序接口。 若一

JAVA傳遞和引用傳遞問題

log 輸出結果 基礎知識 blue static 繼續 oid .net red   這是個老生常談的問題了,引起過無數爭論,但可以說一直沒有一個令人滿意的回答。   有人總結過: 對象是按引用傳遞的 Java 應用程序有且僅有的一種參數傳遞機制,即按值傳遞

JavaComparable和Comparator比較

collect clas bold 數據 let 排序類 height webkit tom 1、Comparable 介紹 Comparable 是一個排序接口,如果一個類實現了該接口,說明該類本身是可以進行排序的。註意,除了基本數據類型(八大基本數據類型) 的數組或

用畫小狗的方法來解釋Java傳遞

java 一次 虛擬機 mage 新的 不難 修改 相同 完整 在開始看我畫小狗之前,咱們先來看道很簡單的題目: 下面程序的輸出是什麽? Dog myDog = new Dog("旺財"); changeName(myDog); System.out.println(

JavalongLong)與int(Integer)之間的轉換(轉)

轉化 string long tar str 基礎數據類型 ava detail 參考 一、將long型轉化為int型,這裏的long型是基礎類型: long a = 10; int b = (int)a; 二、將Long型轉換為int型,這裏

為什麽說Java只有傳遞----說服自己

width new 外部變量 Go sch -- 而不是 得到 cdp 在開始深入講解之前,有必要糾正一下大家以前的那些錯誤看法了。如果你有以下想法,那麽你有必要好好閱讀本文。 錯誤理解一:值傳遞和引用傳遞,區分的條件是傳遞的內容,如果是個值,就是值傳遞。如果是個引用,

Java equals 和 == 的比較

ron 博客 自動裝箱 color bsp target net adf log 先來看這樣一個題目,假設有以下代碼 下列選項中返回false的語句是? String s = "hello"; String t = “hello”; cha

java傳遞和引用傳遞

raise 兩個 demo1 double class turn style chan reference java 參數,不管是原始類型還是引用類型,傳遞的都是參數的副本。 如果參數類型是原始類型,那麽傳遞的參數是這個參數的一個副本,也就是這個原始參數的值。如果在函數中改

如何理解IEEE 754標準對Javafloat和double的規定

rac tro zh-cn 分享圖片 編號 如何 ins font 指數 在Java語言中,我們可以使用float和double這兩種基本數據類型來表示特定的數據。 這兩種數據類型,本質上是浮點數(floating-point number),浮點是一種對於實數的近似值數值

JAVA只有傳遞(用內存理解)

合並 形參 java 註意 拷貝 引用數據類型 基本類 壓棧 數據 剛剛上路的小夥盤們牢記哦,JAVA只有值傳遞,八大基本類型傳遞的是值。所有當調用帶有基本類型參數的方法時會把這個方法和他的局部變量一起合並成棧幀然後壓棧,註意方法的參數也是這個方法的局部變量,所以當實參將值