java数组去重_JAVA数组去重常用方法

java数组去重_JAVA数组去重常用方法packagecom.zxj.test;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.HashMap;importjava.util.List;importjava.util.Map;publicclassTest{publicstaticvoidmain(String[]args){String…

大家好,又见面了,我是你们的朋友全栈君。

packagecom.zxj.test;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.HashMap;importjava.util.List;importjava.util.Map;public classTest {

public static void main(String [] args) {

String [] arrStr = {“Java”, “C++”, “Php”, “C#”, “Python”, “C++”, “Java”};

test1(arrStr);

test2(arrStr);

test3(arrStr);

test4(arrStr);

}

//方法1:通过List去重

public static void test1(String [] arrStr) {

List list = new ArrayList<>();

for (int i=0; i

if(!list.contains(arrStr[i])) {

list.add(arrStr[i]);

}

}

System.out.println(list);

//返回一个包含所有对象的指定类型的数组

//String[] newArrStr = list.toArray(new String[1]);

//System.out.println(Arrays.toString(newArrStr));

}

//方法2:通过Map去重

public static void test2(String [] arrStr) {

Map map = new HashMap<>();

for (String str : arrStr) {

map.put(str, str);

}

System.out.println(map.keySet());

}

//方法3:通过Set去重

public static void test3(String [] arrStr) {

Set set = new HashSet<>();

for (String str : arrStr) {

set.add(str);

}

System.out.println(set);

}

//方法4:通过lambda去重(jdk1.8)

public static void test4(String [] arrStr) {

Stream stream = Arrays.stream(arrStr);

List list = stream.distinct().collect(Collectors.toList());

System.out.println(list);

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149743.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PID控制详解[通俗易懂]

    PID控制详解[通俗易懂]PID控制详解一、PID控制简介PID(ProportionalIntegralDerivative)控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,尤其适用于可建立精确数学模型的确定性控制系统。在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节,它实际上是一种算法。PID控制器问…

    2022年6月10日
    49
  • 零基础学Java(6)控制流程

    零基础学Java(6)控制流程控制流程与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流程。块作用域我们首先要了解块(block)的概念。块是指由若干条Java语句组成的语句,并用一对大括号括起来。块确定了变

    2022年8月7日
    8
  • [Python3]Numpy数组转置的三种方法T、transpose、swapaxes「建议收藏」

    [Python3]Numpy数组转置的三种方法T、transpose、swapaxes「建议收藏」天下难事,必作于易;天下大事,必作于细——老子Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环。1.首先数组转置(T)创建二维数组data如下:进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^TX.这时就需要利用数组转置,如下:2.轴对换之transpose对于高维数组,可以使用轴对换来对多…

    2022年6月2日
    34
  • inputstreamreader类是用于将_readstring

    inputstreamreader类是用于将_readstring一、InputStreamReader类InputStreamReader将字节流转换为字符流。是字节流通向字符流的桥梁。如果不指定字符集编码,该解码过程将使用平台默认的字符编码,如:GBK。构造方法:InputStreamReaderisr=newInputStreamReader(InputStreamin);//构造一个默认编码集的InputStr

    2022年9月26日
    0
  • Anaconda–Pycharm安装教程[通俗易懂]

    Anaconda–Pycharm安装教程[通俗易懂]因为不想每次下载安装的时候都要去找博客,干脆就参考别人的博客,把自己需要的写下来了。1、Anaconda的安装从官网https://www.anaconda.com/download/下载Anaconda的安装程序,在该页面选择你电脑所对应的系统(Windows、macOSorLinux)以及操作系统位数(64位or32位)。选择Python3.8,等待下载完成,之后便会得到一个anaconda的exe可执行文件。![在这里插入图片描述](https://img-blog.csd

    2022年8月28日
    0
  • OpenHarmonyOS for Hi3516dv300[通俗易懂]

    OpenHarmonyOS for Hi3516dv300[通俗易懂]OpenHarmonyOSforHi3516dv300一、安装dockermkdiropenHarmonycdopenHarmonysudosnapinstalldocker#获取docker镜像sudodockerpullswr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.1#运行镜像sudodockerrun-it-v$(pwd):/h

    2022年9月16日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号