lQV28資訊網(wǎng)——每日最新資訊28at.com
比亞迪最近幾年憑借著其新能源汽車的板塊大火了一把,無論是名聲還是股價(jià)都漲得嘎嘎猛,但是迪子招聘編程技術(shù)崗位的人員卻有兩個特點(diǎn):lQV28資訊網(wǎng)——每日最新資訊28at.com
- 面試難度低,對學(xué)校有一定的要求。
- 薪資給的和面試難度一樣低。
但不管怎么,迪子也算是國內(nèi)知名公司了,所以今天咱們來看看,他的校招 Java 技術(shù)崗的面試題都問了哪些知識點(diǎn)?面試題目如下:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
1、int和Integer有什么區(qū)別?
參考答案:int 和 Integer 都是 Java 中用于表示整數(shù)的數(shù)據(jù)類型,然而他們有以下 6 點(diǎn)不同:lQV28資訊網(wǎng)——每日最新資訊28at.com
- 數(shù)據(jù)類型不同:int 是基礎(chǔ)數(shù)據(jù)類型,而 Integer 是包裝數(shù)據(jù)類型;
- 默認(rèn)值不同:int 的默認(rèn)值是 0,而 Integer 的默認(rèn)值是 null;
- 內(nèi)存中存儲的方式不同:int 在內(nèi)存中直接存儲的是數(shù)據(jù)值,而 Integer 實(shí)際存儲的是對象引用,當(dāng) new 一個 Integer 時(shí)實(shí)際上是生成一個指針指向此對象;
- 實(shí)例化方式不同:Integer 必須實(shí)例化才可以使用,而 int 不需要;
- 變量的比較方式不同:int 可以使用 == 來對比兩個變量是否相等,而 Integer 一定要使用 equals 來比較兩個變量是否相等;
- 泛型使用不同:Integer 能用于泛型定義,而 int 類型卻不行。
2、什么時(shí)候用 int 和 Integer?
參考答案:int 和 Integer 的典型使用場景如下:lQV28資訊網(wǎng)——每日最新資訊28at.com
- Integer 典型使用場景:在 Spring Boot 接收參數(shù)的時(shí)候,通常會使用 Integer 而非 int,因?yàn)?Integer 的默認(rèn)值是 null,而 int 的默認(rèn)值是 0。如果接收參數(shù)使用 int 的話,那么前端如果忘記傳遞此參數(shù),程序就會報(bào)錯(提示 500 內(nèi)部錯誤)。因?yàn)榍岸瞬粋鲄⑹?null,null 不能被強(qiáng)轉(zhuǎn)為 0,所以使用 int 就會報(bào)錯。但如果使用的是 Integer 類型,則沒有這個問題,程序也不會報(bào)錯,所以 Spring Boot 中 Controller 接收參數(shù)時(shí),通常會使用 Integer。
- int 典型使用場景:int 常用于定義類的屬性類型,因?yàn)閷傩灶愋停粫?int 不會被賦值為 null(編譯器會報(bào)錯),所以這種場景下,使用占用資源更少的 int 類型,程序的執(zhí)行效率會更高。
3、HashMap 底層實(shí)現(xiàn)?
HashMap 在 JDK 1.7 和 JDK 1.8 的底層實(shí)現(xiàn)是不一樣的。lQV28資訊網(wǎng)——每日最新資訊28at.com
- 在 JDK 1.7 中,HashMap 使用的是數(shù)組 + 鏈表實(shí)現(xiàn)的。
- 而 JDK 1.8 中使用的是數(shù)組 + 鏈表或紅黑樹實(shí)現(xiàn)的。
HashMap 在 JDK 1.7 中的實(shí)現(xiàn)如下圖所示:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
HashMap 在 JDK 1.8 中的實(shí)現(xiàn)如下圖所示:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
4、HashMap 如何取值和存值?
參考答案:HashMap 使用 put(key,value) 方法進(jìn)行存值操作,而存值操作的關(guān)鍵是根據(jù) put 中的 key 的哈希值來確定存儲的位置,如果存儲的位置為 null,則直接存儲此鍵值對;如果存儲的位置有值,則使用鏈地址法來解決哈希沖突,找到新的位置進(jìn)行存儲。lQV28資訊網(wǎng)——每日最新資訊28at.com
HashMap 取值的方法是 get(key),它主要是通過 key 的哈希值,找到相應(yīng)的位置,然后通過 key 進(jìn)行判斷,從而獲取到存儲的 value 信息。lQV28資訊網(wǎng)——每日最新資訊28at.com
5、SpringBoot 如何修改端口號?
參考答案:在 Spring Boot 中的配置文件中設(shè)置“server.port=xxx”就可以修改端口號了。lQV28資訊網(wǎng)——每日最新資訊28at.com
6、如何修改 Tomcat 版本號?
參考答案:在 pom.xml 中添加 tomcat-embed-core 依賴就可以修改 Spring Boot 中內(nèi)置的 Tomcat 版本號了,如下圖所示:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
但需要注意的是 Spring Boot 和 Tomcat 的版本是有對應(yīng)關(guān)系的,要去 maven 上查詢對應(yīng)的版本關(guān)系才能正確的修改內(nèi)置的 Tomcat 版本號,如下圖所示:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
7、SpringBoot如何配置Redis?
參考答案:首先在 Spring Boot 中添加 Redis 的框架依賴,然后在配置文件中使用“spring.redis.xxx”來設(shè)置 Redis 的相關(guān)屬性,例如以下這些:lQV28資訊網(wǎng)——每日最新資訊28at.com
spring: redis: # Redis 服務(wù)器地址 host: 127.0.0.1 # Redis 端口號 port: 6379 # Redis服務(wù)器連接密碼,默認(rèn)為空,若有設(shè)置按設(shè)置的來 password: jedis: pool: # 連接池最大連接數(shù),若為負(fù)數(shù)則表示沒有任何限制 max-active: 8 # 連接池最大阻塞等待時(shí)間,若為負(fù)數(shù)則表示沒有任何限制 max-wait: -1 # 連接池中的最大空閑連接 max-idle: 8
8、MySQL 左連接和右連接有什么區(qū)別?
參考答案:在 MySQL 中,左連接(Left Join)和右連接(Right Join)是兩種用來進(jìn)行聯(lián)表查詢的 SQL 語句,它們的區(qū)別如下:lQV28資訊網(wǎng)——每日最新資訊28at.com
- 左連接:左連接是以左邊的表格(也稱為左表)為基礎(chǔ),將左表中的所有記錄和右表中匹配的記錄聯(lián)接起來。即使右表中沒有匹配的記錄,左連接仍然會返回左表中的記錄。如果右表中有多條匹配記錄,則會將所有匹配記錄返回。左連接使用 LEFT JOIN 關(guān)鍵字來表示。
- 右連接:右連接是以右邊的表格(也稱為右表)為基礎(chǔ),將右表中的所有記錄和左表中匹配的記錄聯(lián)接起來。即使左表中沒有匹配的記錄,右連接仍然會返回右表中的記錄。如果左表中有多條匹配記錄,則會將所有匹配記錄返回。右連接使用 RIGHT JOIN 關(guān)鍵字來表示。
例如以下圖片,左連接查詢的結(jié)果如下圖所示(紅色部分為查詢到的數(shù)據(jù)):lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
右連接如下圖紅色部分:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
9、內(nèi)連接沒有匹配上會怎么?
參考連接:內(nèi)連接使用的是 inner join 關(guān)鍵字來實(shí)現(xiàn)的,它會匹配到兩張表的公共部分,如下圖所示:lQV28資訊網(wǎng)——每日最新資訊28at.com
lQV28資訊網(wǎng)——每日最新資訊28at.com
所以,如果內(nèi)連接沒有匹配上數(shù)據(jù),則查詢不到此數(shù)據(jù)。lQV28資訊網(wǎng)——每日最新資訊28at.com
小結(jié)
以上是比亞迪的面試題,但并不是說比亞迪的面試難度一定只有這么低。因?yàn)槊嬖嚨碾y度通常是根據(jù)應(yīng)聘者的技術(shù)水平?jīng)Q定的:如果應(yīng)聘者的能力一般,那么通常面試官就會問一下簡單的問題,然后早早結(jié)束面試;但如果應(yīng)聘者的能力比較好,面試官通常會問的比較難,以此來探尋應(yīng)聘者的技術(shù)能力邊界,從而為后續(xù)的定薪、定崗來做準(zhǔn)備,所以大家如果遇到迪子的面試也不要大意。lQV28資訊網(wǎng)——每日最新資訊28at.com
本文鏈接:http://www.tebozhan.com/showinfo-26-35297-0.html比亞迪面試,全程八股!
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com
上一篇: 編程必備,解析五種常用的Python設(shè)計(jì)模式
下一篇: 說一下線程池的核心參數(shù),線程池的執(zhí)行原理