標籤:
package self.learn.basicdata;import java.io.PrintStream;import java.util.Properties;public class BasicData {public static void main(String[] args) {
//問題1: 類似整形變數的取值範圍是什嗎?
//Integer rage
//- 2E31~ 2E31-1
// ........ , ........ , ........ , ........
// 0,1
// 正確的解法如上點表示位元,所以除去符號(次方-1),除去0,(正範圍-1—)
//計算得到 Int的取值範圍如下//- 2E(32位-1)~ 2E(32位-1)-1
// 順便列舉一下基礎資料型別 (Elementary Data Type)佔據的位寬
//byte,boolean 1
// int, float 4
// short,char 2
// long,double 8System.out.println(Integer.MIN_VALUE);System.out.println(Integer.MAX_VALUE);//不好意思,大哥System Properties 給大家看看,也就是順便想到Properties p = System.getProperties();
p.list(new PrintStream(System.out));// 問題2: 左右移位元運算舉例考察
//左移 =》 左邊丟棄,尾部補0
//安裝2進位到10進位轉換,移動的位置是2進位值(0,1)*2E‘N’(N代表位位置),相當於講數字本身乘以2的N次方
// 醬油男又開始咧咧了,你寫個(0,1)這算怎麼回事?我只想說,你把0移動幾位他的值是多少?int i = 2;System.out.println(i<< 2);//2*2*2或者說2* 2EN//右移=》 右邊丟棄,原來最左邊是0補0,是1補1int j =-8;System.out.println(j >> 2);//相當於8/2/2 或者說-8/2E2 (取整)System.out.println(j >>> 2);// 無符號為右移,表示無論如何最邊都補0 (即無符號位位移)
//順便提下 邏輯運算 與 位元運算
//&&,||,! VS &,|,^(異或),~(補碼)
//解釋:補碼錶示0變1,1變0
// 送你的 -> 自動裝箱,拆箱的注意事項
// 不用直接比較自動被裝箱的兩個對象相等(Not useful)Integer ii = 200;Integer jj = 200;System.out.println("ii == jj? =>" + (ii == jj? "Yes,Equal":"No,unqual").toString());Integer ii2 = 100;Integer jj2 = 100;System.out.println("ii2 == jj2? =>" + (ii2 == jj2? "Yes,Equal":"No,unqual").toString());
//因為-128~127 這種數字是在記憶體中被緩衝了。(這是100與200的差異)//問題3: 數組,記得正確的申明與初始化的方式int[] a1 = {1, 2,3};int[] a2 = new int[10];int[] a3 = new int[]{1,2,3};
//問題4: 考考你String記憶體複用的問題//String, immutable object.String str1 = "Hello ";String str2 = "Velly";String str4 = "Hello Velly";String str3 = (str1 + str2).intern();System.out.println("str3 == str4, if use intern() =>" + (str3 == str4? "Yes,Equal":"No,Unqual"));//Ensure you know StringBuilder
//關於正則,則每種語言都差不多啦//Regular Expression: Nothing to say.//String.matches()//Compile Pattern with "Pattern.compile("regular expression")"//Reuse pattern_compiled.matcher(String) with Matcher Object.//If matcher and matcher.find(): //matcher with group([index])}}
<未完待續>
送上一篇應付Java 面試的秘籍(Java 初級)