package cn.aresoft;

import java.util.ArrayList;
import java.util.List;

public class TestBasic {

public static void main(String[] args) {
String str = "kjkljklhuionsd";
System.out.println(sub(str));
System.out.println(sub1(str));
}

// 方法一:
static String sub(String str) {
StringBuffer result = new StringBuffer();
List list = new ArrayList();
char[] cs = str.toCharArray();
for (int i = 0; i < cs.length; i++) {
if (!list.contains(cs[i])) {
result.append(cs[i]);
list.add(cs[i]);
}
}
return result.toString();
}

// 方法二:
static String sub1(String str) {
List list = new ArrayList();
StringBuffer sb = new StringBuffer(str);
int j = 0;
for (int i = 0; i < str.length(); i++) {
if (list.contains(str.charAt(i))) {
sb.deleteCharAt(i - j); // String 是没有delete方法的
j++; // 因为删除了sb中的字符,有一个偏移
} else {
list.add(str.charAt(i));
}
}
return sb.toString();
}
}

String去除重复字符两个方法的更多相关文章

  1. string [] 去除重复字符两个方法

    不废话直接看图 结果 代码: this.txtListHTML.Text = String.Join(",", list.Replace("\r\n", &qu ...

  2. Money类型转化为String去除小数点后0解决方法

    Money类型转化为String去除小数点后0从数据库提取Money类型后,字符串如:1212.0000 如何使其成为1212             注:去掉了小数点 如果是:1212.0100 使 ...

  3. ArrayList去除重复元素(多种方法实现)

    package other; import java.util.ArrayList; import java.util.HashSet; public class test4 { public sta ...

  4. [LeetCode] Repeated String Match 重复字符串匹配

    Given two strings A and B, find the minimum number of times A has to be repeated such that B is a su ...

  5. Javascript一句代码实现JS字符串去除重复字符

    需求: 原字符串:abcdabecd 去重后字符串:abcde JS字符串去重,一个简单需求,网上找案例发现都是一大堆代码,对于强迫症的我 实再无法忍受,于是自己手动写出一段代码,完美解决该问题. 代 ...

  6. C# char[]与string互相转换的两种方法

    1.string转换为char[]:char[] string.ToCharArray(); static void Main(string[] args)        {            s ...

  7. Java中List集合去除重复数据的六种方法

    1. 循环list中的所有元素然后删除重复 public static List removeDuplicate(List list) { for ( int i = 0 ; i < list. ...

  8. [LeetCode] 686. Repeated String Match 重复字符串匹配

    Given two strings A and B, find the minimum number of times A has to be repeated such that B is a su ...

  9. sql去除重复的几种方法

    所以用这样一句SQL就可以去掉重复项了: select * from msg group by terminal_id; SQL中distinct的用法(四种示例分析) 示例1 select dist ...

随机推荐

  1. 《Spring技术内幕》笔记-第二章 IoC容器的实现

    简单介绍 1,在Spring中,SpringIoC提供了一个主要的JavaBean容器.通过IoC模式管理依赖关系.并通过依赖注入和AOP切面增强了为JavaBean这样子的POJO提供事务管理,生命 ...

  2. splunk的bucket组织目录——时间序列,按照时间来组织目录

    splunk的bucket组织目录:db_1481515116_1480695302_0db_1481537316_1481532688_1db_1481547598_1481539988_2db_1 ...

  3. Bayesian Regression

    Thus we see that there are very close similarities between this Bayesian viewpoint and the conventio ...

  4. cors解决跨越问题

    转载于http://www.cnblogs.com/jiangwz/p/8142740.html Cross-Origin Resource Sharing(CORS)跨来源资源共享是一份浏览器技术的 ...

  5. 一个能让cin和scanf 一样快的方法:

    cin慢是有原因的,其实默认的时候,cin与stdin总是保持同步的,也就是说这两种方法可以混用,而不必担心文件指针混乱,同时cout和stdout也一样,两者混用不会输出顺序错乱.正因为这个兼容性的 ...

  6. RPC与REST

    RPC与REST (摘自网络,个人理解)

  7. 自学Python九 爬虫实战二(美图福利)

    作为一个新世纪有思想有文化有道德时刻准备着的屌丝男青年,在现在这样一个社会中,心疼我大慢播抵制大百度的前提下,没事儿上上网逛逛YY看看斗鱼翻翻美女图片那是必不可少的,可是美图虽多翻页费劲!今天我们就搞 ...

  8. iOS - CocoaPods操作详解

    在我们进行iOS应用开发的时候,肯定会用到很多的第三方类库,最常用AFNetworking,SDWebImage等等,当我们用到这个类库的时候,就要一个一个的去下载这个类库,如果这个类库中又用到了其他 ...

  9. android悬浮球实现各种功能、快速开发框架、单词、笔记本、应用市场应用等源码

    Android精选源码 悬浮球,实现一键静音,一键锁频,一键截屏等功能 一个Android快速开发框架,MVP架构 Android QQ小红点的实现源码 android一款单词应用完整app源码 an ...

  10. hadoop单机环境配置

    1.配置一台linux服务器(当前使用CentOS7)及一些基本设置 1.1在wmware下制作一台centos服务器(桥接模式)         并设置静态ip (编辑/etc/sysmconfig ...