Set集合練習

使用Set集合,生成1-25之內不重複的7個隨機整數

package pro_0415_homework;
/**
 * 使用Set集合,生成1-25之內不重複的7個隨機整數
 */
import java.util.HashSet;
import java.util.Set;

public class HomeWork01 
{
	public static void main(String[] args) 
	{
		Set<Integer> set=new HashSet<>();
		for(int i=0;i<7;i++)
		{
			set.add((int)(Math.random()*25)+1);
		}
		System.out.println(set.toString());
	}
}

1.如何取到set集合的第一個元素。

package pro_0415_homework;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

/**
 * 1.如何取到set集合的第一個元素。
 */
public class HomeWork02 
{
	public static void main(String[] args) 
	{
		Set<Object> set=new HashSet<>();
		set.add(12);
		set.add(32);
		set.add("abc");
		set.add(true);
		System.out.println(set.toString());
		//第一種方法
		Object[] obj=set.toArray();
		System.out.println(obj[0]);
		//第二種方法
		if(!set.isEmpty())
		{
			System.out.println(set.iterator().next());
	    }
		//第三種方法:將set集合轉換成list集合 取第一個
		List<Object> list = new ArrayList<>(set);
        System.out.println(list.get(0));
	}
}

如何判斷兩個集合是否有交集,並打印出他們的交集

package pro_0415_homework;

import java.util.HashSet;
import java.util.Set;

/**
 * 如何判斷兩個集合是否有交集,並打印出他們的交集
 */
public class HomeWork03 
{
	public static void main(String[] args) 
	{
		Set<Object> set=new HashSet<>();
		set.add(12);
		set.add(15.6);
		set.add("abc");
		set.add(95);
		set.add(66);
		set.add("張三");
		System.out.println("set:"+set);
		
		Set<Object> s1=new HashSet<>();
		s1.add(12);
		s1.add(15.6);
		s1.add(33);
		s1.add("abc");
		s1.add("張三");
		System.out.println("s1:"+s1);
		System.out.println(set.retainAll(s1)); //差集:set.removeAll(s1);
		System.out.println("交集是:"+set);
	}
}

使用至少三種方法遍歷某個Set集合

package pro_0415_homework;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * 使用至少三種方法遍歷某個Set集合
 */
public class HomeWork04 
{
	public static void main(String[] args) 
	{
		Set<Object> set=new HashSet<>();
		set.add(12);
		set.add(32);
		set.add("abc");
		set.add(true);
		System.out.println(set.toString());
		
		//遍歷方法一
		Object[] obj=set.toArray();
		for(int i=0;i<obj.length;i++)
		{
			System.out.print(obj[i]+"\t");
		}
		System.out.println();
		//遍歷方法二
		set.forEach(e->{System.out.print(e+"\t");});
		System.out.println();
		//遍歷方法三
		for(Object obj3:set)
		{
			System.out.print(obj3+"\t");
		}
		System.out.println();
		//遍歷方法四
		Iterator<Object> it=set.iterator();
		while(it.hasNext())
		{
			Object obj4=it.next();
			System.out.print(obj4+"\t");
		}
	}
}

 

將五個學生的姓名存儲到某個Set集合,並排序後輸出

package pro_0415_homework;

import java.text.Collator;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;

/**
 * 將五個學生的姓名存儲到某個Set集合,並排序後輸出
 */
public class HomeWork05 
{
	public static void main(String[] args) 
	{
		Set<String> set=new TreeSet<>();
		set.add("張三");
		set.add("李四");
		set.add("王五");
		set.add("趙六");
		set.add("小明");
		System.out.println(set.toString());
		//=======================
		Object[] obj=set.toArray();
		//Collator類用來區分語言環境
		Comparator<Object> cpt=Collator.getInstance(java.util.Locale.CHINA);
		//Arrays.sort 自帶排序
		Arrays.sort(obj,cpt);
		for(Object s:obj)
		{
			System.out.print(s+"\t");
		}	
	}
}
/*
 * public static void main(String[] args) 
	{
		Set set=new HashSet(20);
		set.add("張三");
		set.add("李四");
		set.add("王五");
		set.add("趙六");
		Object[] obj=set.toArray();
		getChina(obj);
		for(Object sui:obj)
		{
			System.out.println(sui+"\t");
		}
		
	}
	public static Object[] getChina(Object[] a)
	{
		//Collator類用來區分語言環境
		Comparator cpt=Collator.getInstance(java.util.Locale.CHINA);
		//Arrays.sort 自帶排序
		Arrays.sort(a,cpt);
		return a;
	}
 * */

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章