在java开发中碰到了有些字符串是重复的,如果在进行业务处理要全部遍历太对的数据就会重复,所以在进行业务处理前进行一个去重操作。

这里由于业务需要所以先将字符串转化为string数组,使用split分割,然后将string数组一个个放到list里(list的remove可以将你不要的字符串删除掉,代参数的哦)

可以看到我使用的是list,在list里包含了一个contains函数,表示当前字符串是否与list里的元素有相同没有就add进list里

在最后还将list里的元素转化为string数组就将重复的字符串去除了,在最后使用了substring将字符串截取,在这里如果你的otherAppid太长的话会造成内存溢出,因为substring

的实现是先将字符串拷贝到另一块内存,然后将字符串截取(这也是我看了支付宝的支付dom有个疑问然后查找资料得到的有兴趣的可以找下资料看下)所以可以使用

int i=0;

if (i == newStr.length-1) {//拼接时,不包括最后一个,字符
otherAppid=otherAppid+commercial_account;
} else {
      otherAppid=otherAppid+commercial_account+",";
 }
i++;

判断下。

贴出代码

String otherAppid="";
String tmp="123,234,123,234,567,789,adb,asc,dcf,adb";
String[] commercial_accounts=tmp.split(",");

List<String> list = new ArrayList<String>();  
for (int i=0; i<commercial_accounts.length; i++) {  
System.out.print("commercial_accounts:"+commercial_accounts[i]);
System.out.print("\n");
if(!list.contains(commercial_accounts[i])){
       //去除重复的字符串
        list.add(commercial_accounts[i]);
 } 
}  
//list.remove(1);  去除不想要的字符串
String[] newStr =  list.toArray(new String[0]); //返回一个数组

int i = 0;
for(String commercial_account:newStr){
//otherAppid=otherAppid+commercial_account+",";

if (i == newStr.length-1) {//拼接时,不包括最后一个,字符
otherAppid=otherAppid+commercial_account;
  } else {
      otherAppid=otherAppid+commercial_account+",";
}
i++;
}
System.out.print("otherAppid:"+otherAppid);
System.out.print("\n");
//otherAppid=otherAppid.substring(0,otherAppid.length()-1);
System.out.print("otherAppid:"+otherAppid);

java去除重复的字符串和移除不想要的字符串的更多相关文章

  1. java去除反复的字符串和移除不想要的字符串

    在java开发中碰到了有些字符串是反复的,假设在进行业务处理要所有遍历太对的数据就会反复,所以在进行业务处理前进行一个去重操作. watermark/2/text/aHR0cDovL2Jsb2cuY3 ...

  2. java 去除重复项

    import java.util.Arrays; import java.util.HashSet; import java.util.Set; class Demo20 { public stati ...

  3. ArrayList去除重复元素(包括字符串和自定义对象)

    1.去除重复字符串 package com.online.msym; import java.util.ArrayList; import java.util.Iterator; @SuppressW ...

  4. [转]java去除List中重复的元素

    java去除List中重复的元素 如果用Set ,倘若list里边的元素不是基本数据类型而是对象, 那么请覆写Object的boolean   equals(Object   obj)   和int  ...

  5. java集合 collection-list-ArrayList 将自定义对象作为元素存到ArrayList集合中,并去除重复元素。

    import java.util.*; /* 将自定义对象作为元素存到ArrayList集合中,并去除重复元素. 比如:存人对象.同姓名同年龄,视为同一个人.为重复元素. 思路: 1,对人描述,将数据 ...

  6. Java 去除 ArrayList 集合中的重复元素

    // One practice package Collection; import java.util.ArrayList; import java.util.Iterator; // 去除 Arr ...

  7. java去除数组重复元素的方法

    转载自:https://blog.csdn.net/Solar24/article/details/78672500 import java.util.ArrayList; import java.u ...

  8. java去除字符串后面的\0

    java去除字符串后面的\0 private String filterCode(String string) { if (string != null) { string = string.trim ...

  9. Java实现数组去除重复数据的方法详解

    一.用List集合实现 int[] str = {5, 6, 6, 6, 8, 8, 7,4}; List<Integer> list = new ArrayList<Integer ...

随机推荐

  1. root-systerm-bin是什么program

    root-systerm-bin是什么program http://packages.ubuntu.com/lucid/root-system-bin

  2. Windows服务器nginx+tomcat服务负载均衡

    一.安装两个tomcat服务自启动 1. 解压两个tomcat,名称为分别1,2 2. 配置环境变量 3. 修改文件server.xml中的三个端口号,使得两个tomcat不冲突 (1)<Ser ...

  3. Linux dd 命令

    语法:dd [选项] if =输入文件(或设备名称). of =输出文件(或设备名称). ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数. skip = blocks 跳过读入缓 ...

  4. PHP中刷新输出缓冲,立即输出数据

    <script type="text/javascript"> function show_message(message) { document.getElement ...

  5. Shell根据年月日创建文件夹

    #!/bin/sh dir_path="/vol/project/log/test/" ..} do #echo "$year" cd $dir_path mk ...

  6. Spark Tungsten揭秘 Day3 内存分配和管理内幕

    Spark Tungsten揭秘 Day3 内存分配和管理内幕 恭喜Spark2.0发布,今天会看一下2.0的源码. 今天会讲下Tungsten内存分配和管理的内幕.Tungsten想要工作,要有数据 ...

  7. 爬虫学习之基于Scrapy的爬虫自动登录

    ###概述 在前面两篇(爬虫学习之基于Scrapy的网络爬虫和爬虫学习之简单的网络爬虫)文章中我们通过两个实际的案例,采用不同的方式进行了内容提取.我们对网络爬虫有了一个比较初级的认识,只要发起请求获 ...

  8. jsp+oracle 排序分页+Pageutil类

    1.rownum和排序 Oracle中的rownum的是在取数据的时候产生的序号,所以想对指定排序的数据去指定的rowmun行数据就必须注意了. SQL> select rownum ,id,n ...

  9. android studio 打开github开源代码

    1.最近下载的开源代码全是github来的,一直用eclipse开发,对于android studio来说是全新的 2.在eclipse导入一个工程那是so easy, import选择一下就可以. ...

  10. python学习笔记27(python中sys模块的使用)

    sys.argv           命令行参数List,第一个元素是程序本身路径 sys.modules.keys() 返回所有已经导入的模块列表 sys.exc_info()     获取当前正在 ...