Java数组去掉反复的方法集
经经常使用到,有时候不仅仅是简单的基本类型,那种能够用set集合去重,好多时间用到的是我们自己定义的类型,以下举个样例(我这儿就那int举例了):
方法一、 这样的类似与选择排序算法,首先我们取i值,然后将i之后的全部反复的去掉。详细实现例如以下:
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList; /**
* 创建时间:2014-11-18 下午3:26:35
*
* @author zhangtianyou
* @version 2.2
*/ public class ArrayRemoveRepeat { /**
* @param args
*/
public static void main(String[] args) {
// 原始数组是{4,2,4,6,1,2,4,7,8, 8, 19,11},得到结果{4,2,6,1,7,8}。 System.out.println("之前的数组");
Integer[] src = { 4, 2, 4, 6, 1, 2, 4, 7, 8 };
for (Integer k : src) {
System.out.print(k + ",");
} List<Integer> list = new CopyOnWriteArrayList<Integer>(src); int i = 0;
while (i < list.size() - 1) { int j = i+1;
while (j < list.size()) {
if (list.get(i) == list.get(j)) {
list.remove(j);
j--;
}
j++;
} i++;
} src = list.toArray(new Integer[list.size()]);
System.out.println("\n之后的数组");
for (Integer k : src) {
System.out.print(k + ",");
}
}
}
执行例如以下:
之前的数组
4,2,4,6,1,2,4,7,8,
之后的数组
4,2,6,1,7,8,
Java数组去掉反复的方法集的更多相关文章
- Java数组的十大方法
Java数组的十大方法 以下是Java Array的前10种方法.他们是来自stackoverflow的投票最多的问题. 0.声明一个数组 String[] aArray = new String[5 ...
- Java数组操作十大方法 (转)
定义一个Java数组 String[] aArray = new String[5]; String[] bArray = {"a","b","c&q ...
- (PASS)JAVA数组去重 三种方法 (不用集合)
第一种方法(只学到数组的看): 定义一个新的数组长度和旧数组的长度一样,存储除去重复数据的旧数组的数据和0, package demo01; import java.sql.Array; import ...
- java.lang.OutOfMemoryError: Java heap space错误和方法(集、转)
错误的方式来解决溢出下面的堆空间是从网上找: java.lang.OutOfMemoryError: Java heap space ================================= ...
- Java数组的一些使用方法及堆栈存储
数组 用于存储一组同一数据类型数据的容器 数组会对放入其中的数据自动编号,编号是从0开始的---下标 定义格式 数据类型[] 数组名 = new 数据类型[数组的大小];---可以先声明再初始化 in ...
- java数组实现红包的方法
package Hongbao; import java.text.DecimalFormat; import java.util.Scanner; public class Hongbao { pu ...
- Java 数组的 12 个方法
1. 声明一个数组 String[] aArray = new String[5]; String[] bArray = {"a","b","c&q ...
- Java 数组复制之clone方法
一.源码 public class Test1 { public static void main(String[] args) { // Student[] arrs = new Student[] ...
- java数组复制的简单方法(一)
总结:主要是用a数组的长度等于b数组,然后a数组赋值给b数组,我不能想到这个办法,我还是不理解数组中length属性的含义 这里数组并没有正真复制过来,而是一个引用 package com.a; // ...
随机推荐
- Centos定时自动执行脚本
检查本机crond的基本情况 1.crond的运行状况 2.crond是否开机自启动 如何将脚本添加进自动运行的时间内 直接编辑 vim /etc/crontab ,默认的文件形式如后面的图: 我 ...
- 【转】Unity3D学习日记(一)使用UGUI制作虚拟摇杆
http://blog.csdn.net/begonia__z/article/details/51170059 如今手机游戏玩法多种多样,尤其使用虚拟摇杆进行格斗类游戏开发或者是MMORPG成为了主 ...
- 【转】Apache Thrift - 可伸缩的跨语言服务开发框架
Apache Thrift - 可伸缩的跨语言服务开发框架 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的远程服务调用的框架.本文将从 Java 开发人员角度详 ...
- ORA-12012: 自动执行作业 "SYS"."ORA$AT_OS_OPT_SY_21" 出错
oracle 12.2.0.1版本报错: Errors in file /u01/app/oracle/diag/rdbms/easdb/easdb2/trace/easdb2_j000_27520. ...
- 寻找web根目录
有时候,在利用一些命令执行漏洞时,可以以较高权限执行一些操作,但在我们想要上传shell的时候,却找不到网站根目录,下面是一些日常使用的寻找网站根目录的方法,记录下: 1.jsp 查看当前路径,在这个 ...
- bzoj 4196 树链剖分 模板
[Noi2015]软件包管理器 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 2135 Solved: 1232[Submit][Status][D ...
- C#可选参数与具名参数
可选参数 static void test1() { func1("A"); func1(); Console.ReadKey(); } ) { Console.WriteLine ...
- sql2008安装时 重新启动计算机 失败
原文发布时间为:2010-11-02 -- 来源于本人的百度文章 [由搬家工具导入] sql2008安装时 重新启动计算机 失败解决方法:regedit 运行 打开注册表,找到HKEY_LOCAL_M ...
- [Oracle] Lock&Latch梳理
Oracle lock&latch 1. 概述 4种锁机制 lock latch pin mutex 保证资源在并发访问和修改时不被破坏 锁类型 行为 持有时间 级别 保护类型 lock 队列 ...
- C#图解教程学习笔记——类相关的概念
一.一些基本概念1. 字段:隶属于类的变量,即类的成员变量.2. 方法:隶属于类的函数,即类的成员函数.3. 实例成员:类的每个实例拥有自己的各个类成员的副本,这些成员称为实例成员. 改变一个实例字段 ...