国语精品91自产拍在线观看二区_色偷偷五月天_天天射夜夜爽_99久久免费国产特黄_1717国产精品久久

黑馬程序員Java培訓(xùn)和Android培訓(xùn)-就業(yè)面試題學(xué)習(xí)

時(shí)間:2022-07-02 11:46:11 職場 我要投稿
  • 相關(guān)推薦

黑馬程序員Java培訓(xùn)和Android培訓(xùn)-就業(yè)面試題學(xué)習(xí)

黑馬程序員Java培訓(xùn)和Android培訓(xùn)-就業(yè)面試題學(xué)習(xí)

經(jīng)典問題:

(1)在JAVA中如何跳出當(dāng)前的多重嵌套循環(huán)

法一:在Java中,要想跳出多重循環(huán),可以在外面的循環(huán)語句前定義一個(gè)標(biāo)號,然后在里層循環(huán)體的代碼中使用帶有標(biāo)號的break 語句,即可跳出外層循環(huán)。例如,

ok:

for(int i=0;i<10;i++)< p="">

{

for(int j=0;j<10;j++)< p="">

{

System.out.println(“i=” + i + “,j=” + j);

if(j == 5) break ok;

}

}

法二:讓外層的循環(huán)條件表達(dá)式的結(jié)果可以受到里層循環(huán)體代碼的控制,例如,要在二維數(shù)組中查找到某個(gè)數(shù)字。

int arr[][] = {{1,2,3},{4,5,6,7},{9}};

boolean found = false;

for(int i=0;i<arr.length p="" !found;i++)<="">

{

for(int j=0;j

{

System.out.println(“i=” + i + “,j=” + j);

if(arr[i][j] == 5)

{

found = true;

break;

}

}

}

(2)在switch(expr1)中,expr1只能是一個(gè)整數(shù)表達(dá)式或者枚舉常量(更大字體),整數(shù)表達(dá)式可以是int基本類型或Integer包裝類型(JDK1.5新特性,拆包),由于,byte,short,char都可以隱含轉(zhuǎn)換為int,所以些類型以及這些類型的包裝類型也是可以的作為expr1的類型

(3)使用final關(guān)鍵字修飾一個(gè)變量時(shí),是指引用變量(存儲(chǔ)對象地址的變量)不能變,即其中存儲(chǔ)的對象地址值不能變,也就是說引用變量不能指向另外一個(gè)對象,存儲(chǔ)另外一個(gè)對象的地址,引用變量所指向的對象中的內(nèi)容還是可以改變的。例如,對于如下語句:個(gè)

finalStringBuffera=newStringBuffer("immutable");

執(zhí)行如下語句將報(bào)告編譯期錯(cuò)誤:

a=newStringBuffer("");

但是,執(zhí)行如下語句則可以通過編譯:

a.append("broken!");

有人在定義方法的參數(shù)時(shí),可能想采用如下形式來阻止方法內(nèi)部修改傳進(jìn)來的參數(shù)對象:

public void method(final StringBuffer param)

{

}

實(shí)際上,這是辦不到的,在該方法內(nèi)部仍然可以增加如下代碼來修改參數(shù)對象:

param.append("a");

(4)字符串的比較基本上都是使用equals方法

(5)27、String s = new String("xyz");創(chuàng)建了幾個(gè)String Object? 二者之間有什么區(qū)別?

兩個(gè)或一個(gè),”xyz”對應(yīng)一個(gè)對象,這個(gè)對象放在字符串常量緩沖區(qū),常量”xyz”不管出現(xiàn)多少遍,都是緩沖區(qū)中的那一個(gè)。New String每寫一遍,就創(chuàng)建一個(gè)新的對象,它一句那個(gè)常量”xyz”對象的內(nèi)容來創(chuàng)建出一個(gè)新String對象。如果以前就用過’xyz’,這句代表就不會(huì)創(chuàng)建”xyz”自己了,直接從緩沖區(qū)拿。

關(guān)于字符串的研究:

清晰的學(xué)習(xí)String需具備的知識:

1.內(nèi)存棧與堆

詳細(xì)知識請看我回答的內(nèi)容:http://bbs.itheima.com/thread-360-1-1.html

2.String的關(guān)鍵知識點(diǎn)

String是常量,其對象一旦創(chuàng)建完畢就無法改變。當(dāng)使用+拼接字符串時(shí),會(huì)生成新的String對象,而不是向原有的String對象追加內(nèi)容。

String pool(字符串池)內(nèi)存棧即你上面說的緩沖池

String s = “aaa”;(采用字面值方式賦值)

1) 查找String pool中是否存在“aaa”這個(gè)對象,如果不存在,則在String pool中創(chuàng)建一個(gè)“aaa”對象,然后將String pool中的這個(gè)“aaa”對象的地址返回來,賦給引用變量s,這樣s會(huì)指向String pool中的這個(gè)“aaa”字符串對象

2) 如果存在,則不創(chuàng)建任何對象,直接將String pool中的這個(gè)“aaa”對象地址返回來,賦給s引用。

String s = new String(“aaa”); 堆內(nèi)存

1) 首先在String pool中查找有沒有“aaa”這個(gè)字符串對象,如果有,則不在String pool中再去創(chuàng)建“aaa”這個(gè)對象了,直接在堆中(heap)中創(chuàng)建一個(gè)“aaa”字符串對象,然后將堆中的這個(gè)“aaa”對象的地址返回來,賦給s引用,導(dǎo)致s指向了堆中創(chuàng)建的這個(gè)“aaa”字符串對象。

2) 如果沒有,則首先在String pool中創(chuàng)建一個(gè)“aaa“對象,然后再在堆中(heap)創(chuàng)建一個(gè)”aaa“對象,然后將堆中的這個(gè)”aaa“對象的地址返回來,賦給s引用,導(dǎo)致s指向了堆中所創(chuàng)建的這個(gè)”aaa“對象。







【黑馬程序員Java培訓(xùn)和Android培訓(xùn)-就業(yè)面試題學(xué)習(xí)】相關(guān)文章:

學(xué)java和android哪個(gè)就業(yè)前景好?07-14

java培訓(xùn)就業(yè)前景分析07-14

黑馬程序員-7K面試題07-13

求java,PHP,android,iOS,linux面試題07-13

關(guān)于java的學(xué)習(xí)和就業(yè)前景等相關(guān)問題07-14

Java程序員就業(yè)前景分析07-14

32道java程序員面試題及答案07-13

誰有近幾年華為和中興公司的Java程序員面試題07-11

就業(yè)培訓(xùn)的學(xué)習(xí)心得07-03

求最全的java面試題和經(jīng)驗(yàn)07-13