Java——集合(练习题)
生活随笔
收集整理的這篇文章主要介紹了
Java——集合(练习题)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
例題1:產(chǎn)生10個(gè)1~20之間的隨機(jī)數(shù),要求隨機(jī)數(shù)不能重復(fù)
import java.util.HashSet; import java.util.Random; public class Test1 {/*** 產(chǎn)生10個(gè)1~20之間的隨機(jī)數(shù),要求隨機(jī)數(shù)不能重復(fù)* * 分析:* 1,有Random類創(chuàng)建隨機(jī)數(shù)對(duì)象* 2,需要儲(chǔ)存10個(gè)隨機(jī)數(shù),而且不能重復(fù),所以我們用HashSet集合* 3,如果HashSetsize是小于10就可以不斷的存儲(chǔ),如果大于等于10就停止儲(chǔ)存* 4,通過(guò)Random類中的nextInt(n)方法獲取1到20之間的隨機(jī)數(shù),并將這些隨機(jī)數(shù)存儲(chǔ)在HashSet集合中* 5,遍歷HashSet* */public static void main(String[] args) {//1,有Random類創(chuàng)建隨機(jī)數(shù)對(duì)象Random wsq = new Random(); //2,需要存儲(chǔ)10個(gè)隨機(jī)數(shù),而且不能重復(fù),所以我們用HashSet集合HashSet<Integer> yy = new HashSet<>();//3,如果HashSetsize是小于10就可以不斷的存儲(chǔ),如果大于等于10就停止儲(chǔ)存while(yy.size()<10){//4,通過(guò)Random類中的nextInt(n)方法獲取1到20之間的隨機(jī)數(shù),并將這些隨機(jī)數(shù)存儲(chǔ)在HashSet集合中yy.add(wsq.nextInt(20));}for (Integer integer : yy) {System.out.println(integer);} } }例題2:使用Scanner從鍵盤(pán)讀取一行輸入,去掉其中重復(fù)字符,打印出不同的那些字符
import java.util.HashSet; import java.util.Scanner; public class Test2 { /*** 使用Scanner從鍵盤(pán)讀取一行輸入,去掉其中重復(fù)字符,打印出不同的那些字符* aaaabbbcccddd* bcda* * 分析:* 1,創(chuàng)建Scanner對(duì)象* 2,創(chuàng)建HashSet對(duì)象,將字符存儲(chǔ),去掉重復(fù)* 3,將字符串轉(zhuǎn)換為字符數(shù)組,獲取每一個(gè)字符存儲(chǔ)在HashSet集合中,自動(dòng)去除重復(fù)* 4,遍歷HashSet,打印每一個(gè)字符* * */public static void main(String[] args) {//1,創(chuàng)建Scanner對(duì)象Scanner wsq = new Scanner(System.in);System.out.println("請(qǐng)輸入一行字符串:");//2,創(chuàng)建HashSet對(duì)象,將字符存儲(chǔ),去掉重復(fù)HashSet<Character> yy = new HashSet<>();//3,將字符串轉(zhuǎn)換為字符數(shù)組,獲取每一個(gè)字符存儲(chǔ)在HashSet集合中,自動(dòng)去除重String line = wsq.nextLine();char [] arr = line.toCharArray();for (Character c : arr) {yy.add(c);}//4,遍歷HashSet,打印每一個(gè)字符for(Character ch : yy){System.out.print(ch);}} }例題3:將集合中的重復(fù)元素去掉
import java.util.ArrayList; import java.util.LinkedHashSet; import java.util.List; public class Test3 {/*** 要求:將集合中的重復(fù)元素去掉* * * 分析:* 1,創(chuàng)建一個(gè)List集合存儲(chǔ)若干個(gè)重復(fù)元素* 2,單獨(dú)定義方法去除重復(fù)* 3,打印一下List集合* * */public static void main(String[] args) {//1,創(chuàng)建一個(gè)List集合存儲(chǔ)若干個(gè)重復(fù)元素ArrayList<String> list = new ArrayList<>();list.add("a");list.add("b");list.add("b");list.add("b");list.add("b");list.add("b");list.add("c");list.add("c");list.add("c");list.add("c");list.add("c");list.add("c");list.add("d");list.add("d");list.add("d");list.add("d");list.add("d");list.add("d");//2,單獨(dú)定義方法去除重復(fù)getSingle(list); //獲取單個(gè)元素//3,打印一下List集合System.out.println(list);}/*** 分析:* 去除List集合在的重復(fù)元素* 1,創(chuàng)建一個(gè)LinkedHashSet集合* 2,將List集合中所以的元素添加到LinkedHashSet集合中* 3,將List集合中的元素清除* 4,將LinkedHashSet集合中元素添加到List集合中* */private static void getSingle(List<String> list) {//1,創(chuàng)建一個(gè)LinkedHashSet集合LinkedHashSet<String> lhs = new LinkedHashSet<>();//2,將List集合中所以的元素添加到LinkedHashSet集合中lhs.addAll(list);//3,將List集合中的元素清除list.clear();//4,將LinkedHashSet集合中元素添加到List集合中list.addAll(lhs);} }總結(jié)
以上是生活随笔為你收集整理的Java——集合(练习题)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java——集合框架(List)
- 下一篇: Java——n个数的全排列