集合之五:Set接口(答案)
2024-08-24 03:26:57
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]+" ");
}
}
}
最新文章
- android 案例二 登录界面
- AX7: Quick and easy debugging
- 【Alpha版本】 第四天 11.10
- Openwrt安装软件的方法
- 递推DP URAL 1167 Bicolored Horses
- scala学习笔记(3):类
- 【Xamarin挖墙脚系列:典型的业务程序的结构搭建】
- large-scale analysis of malware downloaders
- MPMoviePlayerController导致statusBar消失,导致内存泄露leak
- [Oracle] 接线表
- Sharepoint 2013 左右&;quot;SPChange&;quot;一个简短的引论
- CSS中RGBA的兼容方法以及透明度计算方法
- [LeetCode] Exam Room 考试房间
- Vuex初级入门及简单案例
- PyCharm 使用Github管理Django项目
- ubuntu 安装 GCC 和 G++ C++ 开发环境
- Docker(三):Dockerfile 命令详解
- sublime中如何用less实现css预编译
- 主流蓝牙芯片盘点,Nordic/TI/博通哪家强?
- 开启SSI配置使shtml支持include公用的页头页脚
热门文章
- ROS Navigation中的map_server地图包功能和使用
- JSONResult引用某博客
- UI7Kit
- Android文件上传
- 《Forward团队-爬虫豆瓣top250项目-开发文档》
- 在Ubuntu14.04上安装WordPress4搭建技术博客
- 传智播客.NET视频学习课件
- Hadoop 新建集群namenode format
- 解决AttributeError: &#39;Ui_MainWindow&#39; object has no attribute &#39;show&#39;报错
- SQL表连接查询inner join left join right join full join ...