java 怎么把多个list 合并成一个去掉重复的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 怎么把多个list 合并成一个去掉重复的相关的知识,希望对你有一定的参考价值。
示例代码:
List<Integer> list1 = new ArrayList<Integer>();
list1.add(1);
list1.add(2);
list1.add(3);
list1.add(4);
List<Integer> list2 = new ArrayList<Integer>();
list2.add(1);
list2.add(4);
list2.add(7);
list2.add(10);
List<Integer> listAll = new ArrayList<Integer>();
listAll.addAll(list1);
listAll.addAll(list2);
listAll = new ArrayList<Integer>(new LinkedHashSet<>(listAll));
System.out.println(listAll);
输出:
[1, 2, 3, 4, 7, 10]
代码要典:
合并 使用java.util.List.addAll(Collection<? extends Integer>)
去重,借助LinkedHashSet
下面的例子讲了如何合并两个java list, 用简单的方法,而不用自己去造轮子,循环list 去做,用如下建档方法:
import java.util.ArrayList;import java.util.List;public class JoinList
public static void main(String[] args)
List<String> listA = new ArrayList<String>(); listA.add("A");
List<String> listB = new ArrayList<String>(); listB.add("B");
List<String> listFinal = new ArrayList<String>
(); listFinal.addAll(listA); listFinal.addAll(listB);
//same result //List<String> listFinal = new ArrayList<String>
(listA); //listFinal.addAll(listB);
System.out.println("listA : " + listA); System.out.println("listB : " + listB); System.out.println("listFinal : " + listFinal);
你可以看到结果如下:
listA : [A]listB : [B]listFinal : [A, B]
其实最关键的就是调用 list 的 addall 方法,apache 的 listUtil , 里面有个 union 方法,其实也是用的 addall 方法。
Matlab中怎样把两个字符串合并成一个字符串?
Matlab中怎样把两个字符串合并成一个字符串?
1、方法一:通过c=[a1,b1]格式拼接
第一步打开matlab的命令行窗口,输入a1='abcd123';b1='decf456';c=[a1,b1],按回车键,如下图所示:
2、第二步可以看到c='abcd123decf456',成功将两个字符串进行拼接起来了,如下图所示:
3、方法二:通过strcat函数进行拼接
第一步在命令行窗口中输入d=strcat(a1,b1),按回车键,如下图所示:
4、第二步可以看到d='abcd123decf456',实现了和方法一一样的效果,拼接了两个字符串,如下图所示:
5、方法三:通过sprintf函数拼接多个字符串
第一步输入a1='abcd123';b1='decf456';c1=123456;s=sprintf('%s%s%d',a1,b1,c1),按回车键,如下图所示:
6、第二步可以看到s='abcd123decf456123456',成功将多个字符串整型拼接起来了,如下图所示:
参考技术A1. 用 strcat 函数连接两个字符串。
2.以下是相关字符串处理
a=' a';b='b b';c='cccc';m=''
% 获取字符串长度
length(a)
% 连接两个字符串,每个字符串最右边的空格被裁切
d=strcat(a,c)
length(d)
% 连接多行字符串,每行长度可不等,自动把非最长字符串最右边补空格
% 使与最长字符串相等,会忽略空字符串
e=strvcat(a,b,m)
size(e)
% char连接,空字符串会被空格填满
f=char(a,b,m)
size(f)
% strcmp 比较两个字符串是否完全相等,是,返回真,否则,返回假
% strncmp 比较两个字符串前n个字符是否相等,是,返回真,否则,返回假
% strcmpi 比较两个字符串是否完全相等,忽略字母大小写
% strncmpi 比较两个字符串前n个字符是否相等,忽略字母大小写
% isletter 检测字符串中每个字符时否属于英文字母
% isspace 检测字符串中每个字符是否属于格式字符(空格,回车,制表,换行符等)
% isstrprop 检测字符每一个字符是否属于指定的范围
a='d sdsdsd 15#';
b=isletter(a)
c=isspace(a)
% 字符串替换和查找
% strrep 进行字符串替换,区分大小写
% strrep(str1,str2,str3)
% 它把str1中所有的str2字串用str3来替换
% strfind(str,patten) 查找str中是否有pattern,返回出现位置,没有出现返回空数组
% findstr(str1,str2) 查找str1和str2中,较短字符串在较长字符串中出现的位置,没有出现返回空数组
% strmatch(patten,str) 检查patten是否和str最左侧部分一致
% strtok(str,char) 返回str中由char指定的字符串前的部分和之后的部分,
mm='youqwelcome';
[mm1,mm2]=strtok(mm,'q')
% blanks(n) 创建有n个空格组成的字符串
% deblank(str) 裁切字符串的尾部空格
% strtrim(str) 裁切字符串的开头和尾部的空格,制表,回车符
% lower(str) 将字符串中的字母转换成小写
% upper(str) 将字符串中的字母转换成大写
% sort(str) 按照字符的ASCII值对字符串排序
% num2str 将数字转换为数字字符串
% str2num 将数字字符串转换为数字
% mat2str 将数组转换成字符串
% int2str 把数值数组转换为整数数字组成的字符数组
以上是关于java 怎么把多个list 合并成一个去掉重复的的主要内容,如果未能解决你的问题,请参考以下文章