2019-08-07(類型轉換和數(shù)組)

  1. 兼容類型
    java八種基本類型(byte桶略、short语淘、int、long 际歼、float惶翻、double、char鹅心、boolean)中吕粗,除了布爾類型(boolean)與其他7中類型不兼容外,其他7種類型都是互相兼容的巴帮。

  2. 類型轉換


    IMG_20190807_084646.jpg
    • 順箭頭溯泣,范圍由小到大,精度由低到高榕茧,java幫著自動轉換垃沦。
      注意像byte可以直接轉換為long、double等用押,沒必要先把byte轉換為short肢簿,再轉換為int,再轉換為long蜻拨,就是不用沿箭頭一步一步來池充,可以跳著轉換的,只要是小范圍到大范圍缎讼,低精度到高精度收夸。
    • 逆箭頭,需要進行強制類型轉換血崭。
      例如:double d = 3.2;
      float f = (float)d;
      因為double不能轉換為float卧惜,所以要轉換必須借助強制轉換符(float)厘灼,要轉換成誰,就在小括號內寫上誰咽瓷。
      又如:double d = 3.2;
      float f = (float)(d * 2.0);//后面括起來
  3. 表達式中的操作數(shù)類型自動提升
    在表達式中设凹,如果參與運算的操作數(shù)(變量、字面量茅姜、方法調用的結果闪朱、其他子表達式的結果)不屬于同一類型,則會發(fā)生自動類型提升钻洒。
    規(guī)則如下:

    • 如果表達式中存在double類型的操作數(shù)奋姿,結果為double
    • 如果表達式中不存在double類型的情況下,存在float類型航唆,結果為float
    • 如果表達式中不存在double胀蛮、float類型的情況下,存在long類型糯钙,結果為long
    • 如果表達式中不存在double粪狼、float、long類型任岸,結果為int
      注意:即使參與運算的操作數(shù)沒有int類型再榄,其結果也是int類型的
      例:
      byte b1 = 1;
      byte b2 = 2;
      int result = b1 + b2;
      注意:編譯過程中,編譯器會把那些可以直接得出結果的表達式的值直接編譯到字節(jié)碼中
      如:
      byte res = 10 + 20;//本語句會被編譯器直接編譯為
      byte res = 30;
  4. 數(shù)組

    • 聲明數(shù)組:
      int[] arr1;//推薦用這種方式
      int arr2[];

    • 實例化數(shù)組對象
      arr1 = new int[5];
      這個數(shù)組中可以包含5個int類型的數(shù)據(jù)元素享潜,每個元素的初始值為0困鸥。
      當數(shù)組被實例化以后爽哎,每個元素都會被賦一個初始值:
      整數(shù)類型:0
      浮點類型:0.0
      布爾類型:false
      char:'\u0000'
      引用類型:null

    • 顯示數(shù)組

import java.util.Arrays;

public class Demo001 {
    public static void main(String[] args) {
        int[] arr1;//聲明一個數(shù)組
        
        arr1 =new int[5];//實例化數(shù)組
        
        System.out.println(Arrays.toString(arr1));
        
    }
}

在打出Array后浪默,按ALT+/再按回車,會在代碼行首出現(xiàn)import java.util.Arrays; 陷揪,然后就可以顯示數(shù)組了

  • 訪問數(shù)組長度
    System.out.println("數(shù)組長度是" + arr1.length);
    length屬性是只讀的艺蝴,不能被再次賦值

  • 數(shù)組索引
    通過數(shù)組元素的索引可以訪問某個數(shù)組中的元素
    合法的索引范圍是從0~length-1

  • 修改數(shù)組元素
    把第4個元素的值修改為100
    arr1[3] = 100;
    把倒數(shù)第1個元素的值修改為-1024
    arr1[arr1.length - 1] = -1024;

  • 獲取數(shù)組元素
    獲取第4個元素
    System.out.println(arr1[3]);
    獲取倒數(shù)第1個元素
    System.out.println(arr1[arr1.length - 1]);

  1. 數(shù)組可在聲明的同時進行實例化操作
    boolean[] boolArr = new boolean[10];
    實例化數(shù)組的同時猬腰,可以為其各個元素進行賦值
    int[] arr4 = new int[] { 1, 2, 3, 4, 5 };
    以下形式不可用于方法實際參數(shù)的傳遞
    可以使用new int[]{5,4,3....,-5}進行方法實際參數(shù)的傳遞
    int[] arr5 = { 5, 4, 3, 2, 1, 0, -1, -2, -3, -4, -5 };

  2. 二維度數(shù)組
    二維數(shù)組:即數(shù)組的數(shù)組,規(guī)則的二維數(shù)據(jù)是一張表格
    Java中可以聲明和使用多維數(shù)組猜敢,但在開發(fā)工作中很少使用到

import java.util.Arrays;

public class Demo001 {
    public static void main(String[] args) {
        int[][] arr1 = new int[4][3];
        arr1[1][1] = 10;
        arr1[2][2] = -10;
        arr1[3][1] = 1024;
//      System.out.println(Arrays.deepToString(arr1));橫著排
        System.out.println(Arrays.toString(arr1[0]));
        System.out.println(Arrays.toString(arr1[1]));
        System.out.println(Arrays.toString(arr1[2]));
        System.out.println(Arrays.toString(arr1[3]));//豎著排
        
        
    }
}

二維數(shù)組也可以在聲明的同時進行元素的初始化
以語句聲明并初始化一個二維數(shù)組(char[4][4])

char[][] arr2 = {
                {'a','b','c','d'},
                {'e','f','g','h'},
                {'i','j','k','l'},
                {'m','n','o','p'}
        };
        System.out.println(Arrays.toString(arr2[0]));
        System.out.println(Arrays.toString(arr2[1]));
        System.out.println(Arrays.toString(arr2[2]));
        System.out.println(Arrays.toString(arr2[3]));
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末姑荷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子缩擂,更是在濱河造成了極大的恐慌鼠冕,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件胯盯,死亡現(xiàn)場離奇詭異懈费,居然都是意外死亡,警方通過查閱死者的電腦和手機博脑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門憎乙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來薄坏,“玉大人,你說我怎么就攤上這事寨闹。” “怎么了君账?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵繁堡,是天一觀的道長。 經常有香客問我乡数,道長椭蹄,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任净赴,我火速辦了婚禮绳矩,結果婚禮上,老公的妹妹穿的比我還像新娘玖翅。我一直安慰自己翼馆,他們只是感情好,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布金度。 她就那樣靜靜地躺著应媚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪猜极。 梳的紋絲不亂的頭發(fā)上中姜,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機與錄音跟伏,去河邊找鬼丢胚。 笑死,一個胖子當著我的面吹牛受扳,可吹牛的內容都是我干的携龟。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼辞色,長吁一口氣:“原來是場噩夢啊……” “哼骨宠!你這毒婦竟也來了?” 一聲冷哼從身側響起相满,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤层亿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后立美,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體匿又,經...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年建蹄,在試婚紗的時候發(fā)現(xiàn)自己被綠了碌更。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片裕偿。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖痛单,靈堂內的尸體忽然破棺而出嘿棘,到底是詐尸還是另有隱情,我是刑警寧澤旭绒,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布鸟妙,位于F島的核電站,受9級特大地震影響挥吵,放射性物質發(fā)生泄漏重父。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一忽匈、第九天 我趴在偏房一處隱蔽的房頂上張望房午。 院中可真熱鬧,春花似錦丹允、人聲如沸郭厌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沪曙。三九已至,卻和暖如春萎羔,著一層夾襖步出監(jiān)牢的瞬間液走,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工贾陷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留缘眶,地道東北人。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓髓废,卻偏偏與公主長得像巷懈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子慌洪,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354