1、由於float和double都存在精度丟失,但是float丟失的更嚴重,由於現在記憶體比以前大很多,便宜很多,儘管double佔記憶體大,我們還是選擇double。
2、預設浮點數為double型別,在小數後面加上f,強制轉換成float型別。
3、由於浮點數存在精度丟失,所以浮點數比較,要用差值法,小於乙個很小的數就認為相等。
4、只要用了科學計數法,就一定是浮點數。
5、浮點數除以0.0得無窮大,整型除以0會出異常。
6、0.0/0 得到nan,非數,not a number。
7、整數預設型別為int型,如果整數數值在byte-short之間,編譯器可以轉成byte、short型。
8、經典錯誤
byte a = 2;9、強制轉換會產生「溢位」問題。a = a +1; #1預設為int型,這裡要提公升型別,
這是個編譯錯誤,不會有輸出結果的
10、溢位規則
用該數 - 目標型別的大小*n, 保證輸出減出的差位於取值範圍內11、堆記憶體和棧記憶體
—在方法中定義的、區域性變數(不管什麼型別),都放入對應的方法棧區(引用型別放的是變數名(即它所指向的物件位址),而不是new出來的物件)
—new出來的物件,都放在堆記憶體
12、方法中的變數一定要在定義的時候賦初始值,否則編譯報錯。(可以在列印未賦初始值的變數檢視結果)
13、import (導包),就是為了省略寫包名,讓我們寫程式更簡潔爽快。
14、導包的格式: import 包名.類名;
import 包名.* (這裡注意.不能省略)
15、如果父類沒有無引數的構造器,子類的構造器必須顯示呼叫(super呼叫)父類指定的構造器!!
java學習筆記
1 scanner的使用 1 在jdk5以後出現的用於鍵盤錄入資料的類。2 構造方法 a 講解了system.in這個東西。它其實是標準的輸入流,對應於鍵盤錄入 b 構造方法 inputstream is system.in scanner inputstream is c 常用的格式 scanne...
java學習筆記
方法傳參 如果某個方法的引數是基本資料型別,那麼傳參方式是賦值方式。如果引數是類,那麼就相當於c的位址傳值 public class hello public static void name helloi i class helloi 判斷時間先後 判斷傳入時間是否在當前時間之前 param ti...
Java學習筆記
1.由 基本資料型態轉換成 string string 類別中已經提供了將基本資料型態轉換成 string 的 static 方法 也就是 string.valueof 這個引數多載的方法 有下列幾種 string.valueof boolean b 將 boolean 變數 b 轉換成字串 str...