欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java日常練習(xí)題,每天進步一點點(22)

 更新時間:2021年07月23日 17:13:20   作者:牛哄哄的柯南  
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你

承蒙各位厚愛,我們一起每天進步一點點?。ㄊ髽诉x中空白處查看答案)

1、有以下代碼片段:

String str1=“hello”;

String str2=“he”+ new String(“l(fā)lo”);

System.out.println(str1==str2);

請問輸出的結(jié)果是:

正確答案: D

true

都不對

null

false

題解:
String str1=“hello”; 這樣創(chuàng)建字符串是存在于常量池中
String str2=new String(“hello”); str2存在于堆中,
==是驗證兩個對象是否是一個(內(nèi)存地址是否相同),所以是false
用+拼接字符串時會創(chuàng)建一個新對象再返回。

2、HashMap的數(shù)據(jù)結(jié)構(gòu)是怎樣的?

正確答案: C

數(shù)組

鏈表

數(shù)組+鏈表

二叉樹

題解:
HashMap 由數(shù)組+鏈表組成的,數(shù)組是 HashMap 的主體,鏈表則是主要為了解決哈希沖突而存在的
HashMap內(nèi)部包含了一個默認大小為 16 Entry 類型的數(shù)組 table,其中每個Entry 是一個鏈表,當鏈表長度大于等于 8 時會將鏈表轉(zhuǎn)換為紅黑樹。

3、關(guān)于下面的程序,說法正確的是:

class StaticStuff
{
    static int x = 10;

    static { x += 5; }

    public static void main(String args[])
    {
        System.out.println(“x = ” + StaticStuff .x);
    }
    static 
    {x /= 3; }
}

正確答案: D

第5行和12行不能編譯,因為該方法沒有方法名和返回值。

第12 行不能編譯,因為只能有一個static初始化塊。

代碼編譯并執(zhí)行,輸出結(jié)果x = 10.

代碼編譯并執(zhí)行,輸出結(jié)果 x = 5.

代碼編譯并執(zhí)行,輸出結(jié)果 x = 15.

題解:
第5、12行屬于static修飾的靜態(tài)代碼塊。所以A、B說法錯誤。
靜態(tài)代碼塊以及靜態(tài)變量自上而下的順序依次隨著類加載而執(zhí)行,所以依據(jù)題目的變量初始化:
x初始為10
x+5賦值x,結(jié)果為15
x/3賦值給x,結(jié)果為5

4、枚舉(enum)屬于原始數(shù)據(jù)類型(primitive type)。

正確答案: B

正確

錯誤

題解:
在Java中,變量有兩種類型,一種是原始類型,一種是引用類型。
原始類型一共有8種,它們分別是char,boolean,byte,short,int,long,float,double。在Java API中,有它們對應(yīng)的包裝類,分別是(首字母大寫)Character,Boolean,Byte,Short,Integer,Long,Float,Double(char,int的變化稍微大點)。
JAVA JVM對于不同的原始類型會分配不同的存儲空間,具體分配如下:
byte : 1個字節(jié) 8位
最大值: 127 (有符號)
short : 2個字節(jié) 16位 32767
int : 4個字節(jié) 32位 2147483647
long: 8個字節(jié) 64位 9223372036854775807
float: 4個字節(jié) 32位 3.4028235E38
double:8個字節(jié) 64位 1.7976931348623157E308
枚舉(enum)類型是Java 5新增的特性,它是一種新的類型,允許用常量來表示特定的數(shù)據(jù)片斷,而且全部都以類型安全的形式來表示,是特殊的類,可以擁有成員變量和方法。

5、如下代碼的輸出是

package Test;
public class Test {
    private static void test(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            try {
                if (arr[i] % 2 == 0) {
                    throw new NullPointerException();
                } else {
                    System.out.print(i);
                }
            } finally {
                System.out.print("e");
            }
        }
    }
 
    public static void main(String[]args) {
        try {
            test(new int[] {0, 1, 2, 3, 4, 5});
        } catch (Exception e) {
            System.out.print("E");
        }
    }
 
}

正確答案: B

編譯出錯

eE

Ee

eE1eE3eE5

Ee1Ee3Ee5

題解:
會先進到test(new int[] {0, 1, 2, 3, 4, 5});這里,進入test方法,然后if成立,throw new NullPointerException();但是此時并不會立馬返回,會先把test方法中的finally執(zhí)行,輸出e然后回到main進到catch中輸出E,所以輸出eE

6、設(shè)有下面兩個賦值語句:

a = Integer.parseInt(“1024”);

b = Integer.valueOf(“1024”).intValue();

下述說法正確的是()

正確答案: D

a是整數(shù)類型變量,b是整數(shù)類對象。

a是整數(shù)類對象,b是整數(shù)類型變量。

a和b都是整數(shù)類對象并且它們的值相等。

a和b都是整數(shù)類型變量并且它們的值相等。

題解:
Integer對象的方法
Integer.parseInt("");是將字符串類型轉(zhuǎn)換為int的基礎(chǔ)數(shù)據(jù)類型
Integer.valueOf("")是將字符串類型數(shù)據(jù)轉(zhuǎn)換為Integer對象
Integer.intValue();是將Integer對象中的數(shù)據(jù)取出,返回一個基礎(chǔ)數(shù)據(jù)類型int
在源碼中這兩個方法返回的都是int 也就是說都是整數(shù)類型變量。所以應(yīng)該選D

7、關(guān)于Java語言描述正確的是? ( )

正確答案: B

java和C++都保留了指針

java和C++都有三個特征:封裝、繼承和多態(tài)

java的垃圾回收機制是指程序結(jié)束時系統(tǒng)自動回收內(nèi)存

以上說法都不正確

題解:
送分題
A:Java沒有指針,只有引用。
B:c是面向過程,java和c++都是面向?qū)ο?,面向?qū)ο蟮娜筇卣魇牵悍庋b、繼承、多態(tài)。
C:并不是程序結(jié)束的時候進行GC,GC的時間是不確定的,且GC的過程需要經(jīng)過可達性分析,一個對象只有被標記兩次才會被GC。
下圖是一個對象被GC的全過程。

8、Integer i = 42;

Long l = 42l;

Double d = 42.0;

下面為true的是

正確答案: G

A:(i == l)

B:(i == d)

C:(l == d)

D:i.equals(d)

E:d.equals(l)

F:i.equals(l)

G:l.equals(42L)

題解:
ABC3 個選項很明顯,不同類型引用的 == 比較,會出現(xiàn)編譯錯誤,不能比較。
DEF 調(diào)用 equals 方法,因為此方法先是比較類型,而 i , d , l 是不同的類型,所以返回假。
選項 G ,會自動裝箱,將 42L 裝箱成 Long 類型,所以調(diào)用 equals 方法時,類型相同,且值也相同,因此返回真。

9、關(guān)于equals和hashCode描述正確的是 ()

正確答案: A B C

兩個obj,如果equals()相等,hashCode()一定相等(符合代碼規(guī)范的情況下)

兩個obj,如果hashCode()相等,equals()不一定相等

兩個不同的obj, hashCode()可能相等

其他都不對

題解:
hashCode()的存在是為了查找的快捷性,用于在散列存儲結(jié)構(gòu)中確定對象的存儲地址
如果兩個對象 equals相等,則 hashCode()也一定相等
如果 equals方法被重寫,則 hashCode()也應(yīng)該被重寫
如果兩個對象的 hashCode()相等, equals()方法不一定相等
equals方法沒有重寫,比較的就是應(yīng)用類型的變量所指向的對象的地址

10、有關(guān)finally語句塊說法正確的是( )

正確答案: A B C

不管catch是否捕獲異常,finally語句塊都是要被執(zhí)行的

在try語句塊或catch語句塊中執(zhí)行到System.exit(0)直接退出程序

finally塊中的return語句會覆蓋try塊中的return返回

finally 語句塊在 catch語句塊中的return語句之前執(zhí)行

題解:
D不是return之前,是return執(zhí)行完成之前,return表達式的結(jié)果會暫時保存起來,不會被改變

答案匯總:

1、正確答案: D

2、正確答案: C

3、正確答案: D

4、正確答案: B

5、正確答案: B

6、正確答案: D

7、正確答案: B

8、正確答案: G

9、正確答案: A B C

10、正確答案: A B C

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 詳解pom.xml中maven profile的激活方式

    詳解pom.xml中maven profile的激活方式

    本文主要介紹了詳解pom.xml中maven profile的激活方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 基于Mybatis Plus實現(xiàn)多表分頁查詢的示例代碼

    基于Mybatis Plus實現(xiàn)多表分頁查詢的示例代碼

    這篇文章主要介紹了基于Mybatis Plus實現(xiàn)多表分頁查詢的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • java基于NIO實現(xiàn)群聊模式

    java基于NIO實現(xiàn)群聊模式

    這篇文章主要為大家詳細介紹了java實現(xiàn)NIO實現(xiàn)群聊模式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • SpringBoot文件上傳功能的實現(xiàn)方法

    SpringBoot文件上傳功能的實現(xiàn)方法

    這篇文章主要介紹了SpringBoot文件上傳功能的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Spring?Boot3?跨域配置?Cors的方式

    Spring?Boot3?跨域配置?Cors的方式

    這篇文章主要介紹了Spring?Boot3?跨域配置?Cors,通過使用CORS,開發(fā)人員可以控制哪些外部網(wǎng)頁可以訪問他們的資源,從而提高應(yīng)用程序的安全性,本文結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • IDEA自動生成類圖和時序圖的操作指南

    IDEA自動生成類圖和時序圖的操作指南

    idea 的強大之處在于此,它包含了很多小插件,我們不需要再次下載相關(guān)插件,只需要在idea中小小的設(shè)置一下就可以了,本文我介紹了IDEA自動生成類圖和時序圖的操作指南,我用的是idea2020版本,需要的朋友可以參考下
    2024-05-05
  • Springboot獲取文件內(nèi)容如何將MultipartFile轉(zhuǎn)File

    Springboot獲取文件內(nèi)容如何將MultipartFile轉(zhuǎn)File

    本文給大家介紹Springboot獲取文件內(nèi)容,將MultipartFile轉(zhuǎn)File方法,本文結(jié)合示例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2024-01-01
  • 淺析Java基于Socket的文件傳輸案例

    淺析Java基于Socket的文件傳輸案例

    這篇文章主要針對Java基于Socket的文件傳輸案例進行詳細解析,具有一定的參考價值,感興趣的朋友可以參考一下
    2016-02-02
  • 淺談java7增強的try語句關(guān)閉資源

    淺談java7增強的try語句關(guān)閉資源

    下面小編就為大家?guī)硪黄獪\談java7增強的try語句關(guān)閉資源。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • SpringBoot Session共享實現(xiàn)圖解

    SpringBoot Session共享實現(xiàn)圖解

    這篇文章主要介紹了SpringBoot Session共享實現(xiàn)圖解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01

最新評論