日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java集合练习题_「集合练习题」Java集合框架篇-58-集合框架的几个练习题 - seo实验室...

發布時間:2024/8/1 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java集合练习题_「集合练习题」Java集合框架篇-58-集合框架的几个练习题 - seo实验室... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

集合練習題

前面幾篇我們學習HashSet和LinkedHashSet的原理和基本使用,這篇,我們來練習下這兩個類的相關的集合編程練習題。

一.生成10個1到20之間的不重復的隨機數

分析過程:

1. 需要生成隨機數,那么需要Random類

2. 需要存儲10個不能重復的數,需要HashSet集合(當前treeset還沒學習到)

3. 判斷,當HashSet的Size小于10就往里存儲隨機數,等于就停止添加存儲元素

4. 通過Random的nextint()方法獲取隨機數并加入到HashSet里

5. 遍歷HashSet,打印出10個隨機數

根據上面的分析過程,我們來寫一個測試代碼。package hashset;

import java.util.HashSet;

import java.util.Random;

public class Test1_HashSet {

public static void main(String[] args) {

//1.創建Random對象

Random r = new Random();

//2.創建HashSet對象

HashSet hs = new HashSet<>(); //注意是包裝類不是int

//3.判斷并添加元素

while(hs.size()< 10) {

//4.通過Random中隨機方法nextInt()獲取1到20范圍內隨機數

hs.add(r.nextInt(20) + 1); //如果不加1,隨機范圍是0到19

}

//5.遍歷HashSet

for (Integer integer : hs) {

System.out.println(integer);

}

}

}

運行輸出:16

17

4

6

9

10

11

12

13

15

二.從鍵盤獲取一行輸入字符串,要求去除重復字符。

分析過程:

1. 需要使用scanner類

2. 輸入的是一行字符串,需要轉換成字符數組

3. 創建HashSet集合對象

4. 字符數組遍歷元素,并添加進入HashSet集合

5. 變量集合元素

根據上面分析過程,來寫一個測試代碼package hashset;

import java.util.Arrays;

import java.util.HashSet;

import java.util.Scanner;

import javax.swing.plaf.synth.SynthSpinnerUI;

public class Test2_HashSet {

public static void main(String[] args) {

//1.創建鍵盤輸入對象

Scanner sc = new Scanner(System.in);

System.out.println("請輸入一行字符串:");

String line = sc.nextLine();

//2.字符串轉換成字符數組

char[] c = line.toCharArray();

//3.字符數組轉換成集合對象,創建HashSet

HashSet hs = new HashSet<>();

//4.遍歷數組,元素依次添加進集合

for (int i = 0; i < c.length; i++) {

hs.add(c[i]);

}

//5.遍歷HashSet集合

for (Character character : hs) {

System.out.println(character);

}

}

}

我這邊測試,沒有問題,輸出都進行了字符去重效果。

三.把List集合中的重復元素去除

分析過程:

1. 首先需要有一個List集合,我們就使用ArrayList

2. 給ArrayList集合添加一些重復元素

3. 調用一個去除重復元素的方法(LinkedHashSet實現)

4. 打印去除重復之后的ArrayList元素

好了,關鍵的地方在于,我們如何寫這個去除重復元素的方法,如果使用LinkedHashSet實現。看下面的代碼,注意看代碼備注部分。package hashset;

import java.util.ArrayList;

import java.util.LinkedHashSet;

import java.util.List;

public class test3_HashSet {

public static void main(String[] args) {

//1.創建一個ArrayList集合并添加重復元素

ArrayList list = new ArrayList<>();

list.add("a");

list.add("a");

list.add("b");

list.add("b");

list.add("c");

list.add("c");

//2.調用去重方法

getSingle(list);

//3.遍歷去重之后list集合

System.out.println(list);

}

public static void getSingle(List ls) {

//1.新建一個LinkedHashSet對象

LinkedHashSet lhs = new LinkedHashSet<>();

//2.將List所有元素添加到LinkedHashSet

lhs.addAll(ls); //集合作為一個參數傳入

//3.先把原來的List給清空

ls.clear();

//4.把LinkedHashSet集合元素添加到List

ls.addAll(lhs);

}

}

運行結果:

[a, b, c]

相關閱讀

對于任意的Object,判斷其是否為null,應該將Object xx==null寫在所有判斷條件的前頭,一個為null的東西,調用其自身的任何方法都會出現

HTTP Status 500 - Request processing failed; nested exception is java.lang.NullPointerExceptiontype Exception reportmess

今天在開發的時候用到了枚舉類,剛開始還沒有發現問題,定義好枚舉類之后,為該類定義了屬性,此時問題來了,發現編輯器報錯,規則代碼

點擊上方“方志朋”,選擇“置頂或者星標”

你的關注意義重大!

?前言

現在使用NIO的場景越來越多,很多網上的技術框架或多或

Eclipse:形式, 選中項目右鍵命令行形式:1.編寫Java類2.命令行指定到項目/src文件夾,編譯3.編寫manifest文件4.目錄重新定位到bin/cla

總結

以上是生活随笔為你收集整理的java集合练习题_「集合练习题」Java集合框架篇-58-集合框架的几个练习题 - seo实验室...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。