内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

java集合去重代碼 字符串去重 java

使用java集合去掉數(shù)組中重復(fù)的值并打印出來,數(shù)組:{2,5,4,7,8,9,6,4}

JAVA里面可以利用Set Map的唯一性來排除重復(fù)數(shù)值,具體代碼如下:

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供龍口企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、HTML5建站、小程序制作等業(yè)務(wù)。10年已為龍口眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Set;

import java.util.TreeSet;

public class Test {

public static void main(String[] args) {

int[] ary = {2,5,4,7,8,9,6,4};

//通過Set集合的唯一性來做到去除重復(fù)

SetInteger set = new TreeSetInteger();

//利用map的KEY的唯一性來去除重復(fù)

MapInteger, Object map = new HashMapInteger, Object();

//利用集合特性去除重復(fù)值

for(int i = 0; i ary.length; i++){

set.add(new Integer(i));

map.put(new Integer(i), null);

}

System.out.println("利用Set去除結(jié)果:");

for (Iterator iterator = set.iterator(); iterator.hasNext();) {

Integer integer = (Integer) iterator.next();

System.out.print(integer + " ");

}

System.out.println("\n利用Map去除結(jié)果:");

for(Iterator ite = map.keySet().iterator(); ite.hasNext();){

System.out.print(ite.next() + " ");

}

}

}

---------------程序結(jié)果

利用Set去除結(jié)果:

0 1 2 3 4 5 6 7

利用Map去除結(jié)果:

0 1 2 3 4 5 6 7

java對(duì)List去重并排序,如何快速地去掉兩個(gè)

Java8開始,對(duì)數(shù)值,集合等提供了Stream流操作,可以方便的對(duì)集合進(jìn)行操作.

比如 篩選,過濾,去重, 映射, 排序,規(guī)約,收集 等操作

簡單的參考代碼如下

import?java.util.Arrays;

import?java.util.List;

import?java.util.stream.Collectors;

//?使用Java8?的Stream特性?和?Java8的Lambda?語句

public?class?Demo?{

public?static?void?main(String[]?args)?{

//?需求:?集合去重,排序,得到一個(gè)新集合里面的元素是之前元素的平方

ListInteger?list=Arrays.asList(5,2,2,1,3,4);

ListInteger?listResult?= list

.stream()?//?得到流

.distinct()?//?去重?5,2,1,3,4

.sorted()?//?自然排序?,?也可以自定義排序規(guī)則1,2,3,4,5

.map(x-x*x)?//?每個(gè)元素求平方1,4,9,16,25

.collect(Collectors.toList());?//收集并返回

System.out.println(listResult);//1,4,9,16,25

}

}

用Java中的ArrayList實(shí)現(xiàn):去除集合中字符串的重復(fù)值(字符串的內(nèi)容相同)

public class Test {

public static void main(String[] args) {

ListString list = new ArrayListString();

list.add("測(cè)試1");

list.add("測(cè)試2");

list.add("測(cè)試3");

list.add("測(cè)試4");

list.add("測(cè)試4");

list.add("測(cè)試2");

list.add("測(cè)試5");

System.out.println("沒有去重前的數(shù)據(jù)為"+list.toString());

for(int i = 0;ilist.size()-1;i++){

for(int j = list.size()-1;ji;j--) {

if(list.get(j).equals(list.get(i))){

list.remove(j);

}

}

}

System.out.println("去重后的數(shù)據(jù)為"+list.toString());

}

}

希望能幫到你!

Java中如何去除List中的重復(fù)的值

你要去除的值是基本數(shù)據(jù)類型還是對(duì)象呢?

如果不想存重復(fù)數(shù)據(jù)何不用Set呢。。。

其實(shí)吧。。在知道上提問不如在網(wǎng)頁上查。。這個(gè)是我查到的第一個(gè)。。網(wǎng)頁里的內(nèi)容,他一共使用了3種方式

最近項(xiàng)目中需要對(duì)list集合中的重復(fù)值進(jìn)行處理,大部分是采用兩種方法,一種是用遍歷list集合判斷后賦給另一個(gè)list集合,一種是用賦給set集合再返回給list集合。

但是賦給set集合后,由于set集合是無序的,原先的順序就打亂了。所以我又想著能不能用set的特性進(jìn)行去重又不打亂順序呢?

試了一下,也是可以的,幾種方法在不同情況下都有各自的優(yōu)勢(shì)。現(xiàn)在將代碼寫出來,比較一下。

//set集合去重,不打亂順序

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

Set set = new HashSet();

List newList = new ArrayList();

for (String cd:list) {

if(set.add(cd)){

newList.add(cd);

}

}

System.out.println( "去重后的集合: " + newList);

}123456789101112131415161718

//遍歷后判斷賦給另一個(gè)list集合

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

ListString newList = new ArrayListString();

for (String cd:list) {

if(!newList.contains(cd)){

newList.add(cd);

}

}

System.out.println( "去重后的集合: " + newList);

}1234567891011121314151617

//set去重

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

Set set = new HashSet();

List newList = new ArrayList();

set.addAll(list);

newList.addAll(set);

System.out.println( "去重后的集合: " + newList);

}12345678910111213141516

//set去重(縮減為一行)

public static void main(String[] args){

ListString list = new ArrayListString();

list.add("aaa");

list.add("bbb");

list.add("aaa");

list.add("aba");

list.add("aaa");

List newList = new ArrayList(new HashSet(list));

System.out.println( "去重后的集合: " + newList);

}12345678910111213

hashset不進(jìn)行排序,還有一種方法是用treeset,去重并且按照自然順序排列,將hashset改為treeset就可以了。(原本的順序是改變的,只是按照字母表順序排列而已)

//去重并且按照自然順序排列

List newList = new ArrayList(new TreeSet(list));

JAVA如何去除數(shù)組中每個(gè)元素中重復(fù)的內(nèi)容

java數(shù)組中去掉重復(fù)數(shù)據(jù)可以使用set集合,set本身內(nèi)部是不保存重復(fù)的數(shù)據(jù)的,如下代碼:

import?java.util.Arrays;import?java.util.Set;import?java.util.TreeSet;?public?class?ceshi?{????public?static?void?main(String[]?args)?{?????????int[]?testArr?=?{?5,?5,?1,?2,?3,?6,?-7,?8,?6,?45,?5?};//新建一個(gè)int類型數(shù)組????????System.out.println(Arrays.toString(testArr));????????SetInteger?set?=?new?TreeSetInteger();//新建一個(gè)set集合????????for?(int?i?:?testArr)?{????????????set.add(i);????????}????????Integer[]?arr2?=?set.toArray(new?Integer[0]);????????//?數(shù)組的包裝類型不能轉(zhuǎn)?只能自己轉(zhuǎn);吧Integer轉(zhuǎn)為為int數(shù)組;????????int[]?result?=?new?int[arr2.length];????????for?(int?i?=?0;?i??result.length;?i++)?{????????????result[i]?=?arr2[i];????????}????????System.out.println(Arrays.toString(arr2));????}}

運(yùn)行結(jié)果如下:

使用java集合去除一組數(shù)字中的重復(fù)項(xiàng),并打印輸出

public?class?RemoveDuplicate?{

private?static?int[]?array?=?{1,2,3,3,3,4,5,6,6,7};

public?static?void?remove(){

SetInteger?set?=?new?HashSet();

for?(int?i?:?array)?{

if(!set.add(i)){

System.out.println(i);

}

}

System.out.println(set.toString());

}

public?static?void?main(String[]?args)?{

RemoveDuplicate.remove();

}

}

以上是java代碼??梢岳胹et 的元素的唯一性來完成你的要求。

set.add() 方法 如果添加失敗那么會(huì)返回false,也就意味著里面已經(jīng)有了一個(gè)同樣的元素。

當(dāng)然這個(gè)方法未必是最好的??梢岳靡恍└擅畹姆椒ㄟ_(dá)成。那樣速度和效率都會(huì)更高。

(有部分人不知道為什么我的代碼new?HashSet里面沒有指定類型。那么請(qǐng)參考java1.7新特性)

當(dāng)前標(biāo)題:java集合去重代碼 字符串去重 java
轉(zhuǎn)載注明:http://m.rwnh.cn/article28/doopejp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、網(wǎng)站建設(shè)、商城網(wǎng)站、電子商務(wù)、網(wǎng)站設(shè)計(jì)公司、網(wǎng)頁設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營
阿克陶县| 元氏县| 连州市| 鸡泽县| 道真| 河南省| 陇川县| 家居| 白山市| 林芝县| 承德县| 青铜峡市| 根河市| 肇源县| 新巴尔虎右旗| 鹤峰县| 黄陵县| 黎城县| 永州市| 阿克陶县| 正镶白旗| 湖南省| 康乐县| 玉溪市| 新干县| 义马市| 甘南县| 来安县| 中方县| 体育| 信阳市| 甘洛县| 得荣县| 八宿县| 黄骅市| 隆子县| 永仁县| 永善县| 曲阳县| 武隆县| 黄梅县|