package com.shsxt.homework;

 import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List; /*
* 1、分析以下需求,并用代码实现:
(1)有如下代码:
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("a");
list.add("f");
list.add("b");
list.add("c");
list.add("a");
list.add("d"); }
(2)利用HashSet对list集合去重(最终结果:list中没有重复元素)
2、:自己写出contains 方法 3、分析以下需求,并用代码实现: (1)编写一个泛形方法,实现指定位置数组元素的交换 (2)编写一个泛形方法,接收一个任意数组,并反转数组中的所有元素 4.将"goOd gooD stUdy dAy dAy up"
每个单词的首字母转换成大写其余还是小写字母(不许直接输出good good study day day up 要用代码实现)
*/
public class Homework {
//1
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("a");
list.add("f");
list.add("b");
list.add("c");
list.add("a");
list.add("d"); /*HashSet<String> set = new HashSet<>();
set.addAll(list);
System.out.println(set);
list.clear();
list.addAll(set);
System.out.println(list); //2
boolean flag=contains(set, "");
System.out.println(flag); //3.1
System.out.println(list);
change(list, 1, 4);
System.out.println(list);
*/ //3.2
String[] str=new String[10];
list.toArray(str);
printArr(str);
System.out.println("--------------");
reverse(str); //4
// String str = "goOd gooD stUdy dAy dAy up";
// turnTo(str);
} //2 编写自己的contains方法
public static boolean contains(Collection<String> c,String str){ for(String s: c){
if (str != null || str != "") {
if (str.equals(s)) {
return true;
}
}
}
return false;
} //3分析以下需求,并用代码实现:
//(1)编写一个泛形方法,实现指定位置数组元素的交换
public static <E> List<E> change(List<E> list,int idx1,int idx2){
E e=list.get(idx2);
list.set(idx2, list.get(idx1));
list.set(idx1, e);
return list;
}
//(2)编写一个泛形方法,接收一个任意数组,并反转数组中的所有元素 /*public static <E> E[] reverse(E[] arr) {
for (int j = 0 ; j <arr.length ; j++) {
for (int i = arr.length-1 ; i > 0 ; i--) {
E temp=null;
temp=(E)arr[j];
arr[j]=arr[i];
arr[i]=temp;
}
} return arr;
}*/
public static <T> void reverse(T[] arr) {
//将数组进行交换
for (int i = 0; i < arr.length / 2 ; i++) {
T temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
System.out.println("反转后的数据:");
printArr(arr);
} //4 将"goOd gooD stUdy dAy dAy up"
//每个单词的首字母转换成大写其余还是小写字母(不许直接输出good good study day day up 要用代码实现)
public static void turnTo(String str){ String[] split = str.split(" +"); // 创建StringBuilder对象
StringBuilder sb = new StringBuilder();
for(int i = 0; i < split.length; i++) {
String new_str = split[i];
// 使用substring截取首字符,将其转换成大写
String head = new_str.substring(0, 1).toUpperCase();
// 截取除首字母以外的字符串,将其转换成小写
String end = new_str.substring(1).toLowerCase();
// 将头和尾拼接上
sb.append(head).append(end).append(" ");
}
System.out.println(sb);
} //遍历数组的方法
public static <E> void printArr(E str[]){
for (int i = 0; i < str.length; i++) {
System.out.print(str[i]+" ");
}
}
}

集合之五:Set接口(答案)的更多相关文章

  1. 集合之五:Set接口

    set接口的简单介绍 set接口在API中的说明是:一个不包含重复元素的 collection.更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 ...

  2. 40个Java集合面试问题和答案

    Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点.这里,我列出了一些关于Java集合的重要问题和答案. 另外,码农网之前也整理过一篇关于Java集合面试题的文章:大公司最 ...

  3. (转)40个Java集合面试问题和答案

    Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点.这里,我列出了一些关于Java集合的重要问题和答案. 另外,码农网之前也整理过一篇关于Java集合面试题的文章:大公司最 ...

  4. java面试题------40个Java集合面试问题和答案

    Java集合框架为Java编程语言的基础,也是Java面试中非常重要的一个知识点. 这里,我列出了一些关于Java集合的重要问题和答案. 1.Java集合框架是什么?说出一些集合框架的长处? 每种编程 ...

  5. 30 个 Java 集合面试问题及答案

    30 个 Java 集合面试问题及答案 Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点.这里,我列出了一些关于Java集合的重要问题和答案. 1.Java集合框架是什么 ...

  6. Java集合框架——Set接口

    第三阶段 JAVA常见对象的学习 集合框架--Set接口 List集合的特点是有序的,可重复的,是不是存在这一种无序,且能保证元素唯一的集合呢?(HashSet )这就涉及到我们今天所要讲的Set集合 ...

  7. Java集合之Collection接口

    java的集合分为三大接口,分别是Collection,Map,Iterator,集合接口和类在java.util包中,此次主要介绍三大接口之一的Collection接口. 一些Collection允 ...

  8. 40个Java集合面试问题和答案【上】【转载】

    1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector.Stack.HashTable和Array.随着集合的广泛使用,Java1 ...

  9. 转:40个Java集合面试问题和答案

    转自牛客网:http://mp.weixin.qq.com/s?__biz=MjM5NDYxMzk1Nw==&mid=215319390&idx=1&sn=1ab621bc40 ...

随机推荐

  1. golang之数组

    1.数组:同一种数据类型的固定长度的序列. 2.数组定义:var a [len]int,例如:var a [5]int 3.长度是数组类型的一部分,因此,var a[5] int 和 var a[10 ...

  2. jQuery绑定事件的四種方式

    这篇文章主要介绍的是jQuery绑定事件的四种方式相关内容,下面我们就与大家一起分享. jQuery绑定事件的四种方式 jQuery提供了多种绑定事件的方式,每种方式各有其特点,明白了它们之间的异同点 ...

  3. MVC三者关系

  4. 15 Independent Alleles

    Problem Figure 2. The probability of each outcome for the sum of the values on two rolled dice (blac ...

  5. Linux执行YUM命令报错解决方案

    Loaded plugins: rhnplugin, security This system is not registered with RHN. RHN support will be disa ...

  6. 解决windows搭建jenkins执行selenium无法启动浏览器问题

    因为jenkins是用windows installer 安装成windows的服务了,那么jenkins是一个后台服务,所以跑selium cases 的时候不显示浏览器 Step 1. Contr ...

  7. 查找mysql的my.cnf位置

    1. which mysqld /user/local/mysql/bin/mysqld --verbose --help |grep -A 1 'Default options'

  8. eclipse的thrift插件

    插件网址为:http://thrift4eclipse.sourceforge.net/en/install.html,经测试对Eclipse 4.4.2也有效: Eclipse 4.4.2上的安装步 ...

  9. 这可能是AI、机器学习和大数据领域覆盖最全的一份速查表

    https://mp.weixin.qq.com/s?__biz=MjM5ODE1NDYyMA==&mid=2653390110&idx=1&sn=b3e5d6e946b719 ...

  10. Shell编程-02-Shell变量

    目录 什么是Shell变量 变量类型 环境变量初始化及其对应文件的生效顺序 什么是Shell变量     在初等数学数学方程式中,我们会经常碰到类似于这样的方程式:y=x+1 ,等号左右两边的x和y称 ...