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. 谈谈WhatsApp一年设计经历和收获

    以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具.   关于WhatApp和Facebook如何实现规模设计的思考 我已经在Facebook担任产品经理 ...

  2. IP转换成域名

    DNS就是域名解析系统,它可以将IP转换成域名,也可以将域名转换成IP 1. 安装DNS服务 开始—〉设置—〉控制面板—〉添加/删除程序—〉添加/删除Windows组件—〉“网络服务”—〉选择“域名服 ...

  3. Javascript变长参数和默认参数

    /* javascript 变长参数 * 实参少于形参: 剩下的参数如果没有默认值,将解析为undefined * 实参多于形参: 剩下的实参可以通过 "实参对象"-argumen ...

  4. centos7安装kubernetes 1.1

    原文地址:http://foxhound.blog.51cto.com/1167932/1717105 前提:centos7 已经update yum update -y 一.创建yum源 maste ...

  5. 加载 bean*.xml

    入口 ApplicationContext ctx = new ClassPathXmlApplicationContext("classpath:bean*.xml"); /** ...

  6. PHP(六)PHP和HTML混合的一种形式

  7. UILabel 字体下方加下划线

        UILabel *knowKankan = [[UILabel alloc] initWithFrame:CGRectMake(0, MAINHEIGHT - 78 , MAINWIDTH, ...

  8. HRBUST1310 火影忍者之~鸣人 2017-03-06 16:01 104人阅读 评论(0) 收藏

    火影忍者之-鸣人 火影忍者的男主角漩涡鸣人,因为身上封印着邪恶的九尾妖狐,无父无母的他受尽了村人的冷眼与歧视,他下定决心要成为第六代火影,让所有人都认同他的存在,火影是动漫火影忍者中主人公鸣人所在的国 ...

  9. Using Load-Balancers with Oracle E-Business Suite Release 12 (Doc ID 380489.1)

      Using Load-Balancers with Oracle E-Business Suite Release 12 (Doc ID 380489.1) Modified: 12-Jun-20 ...

  10. Jurassic.ScriptEngine 使用

    标记: Jurassic,js,net Jurassic.ScriptEngine是一个让net动态执行js的一个引擎.类似的有ironjs等.支持ECMAScript 5,非线程安全 使用 usin ...