黑马程序员技术交流社区

标题: C#字符串中去掉重复字符 [打印本页]

作者: liu0o0y    时间: 2014-4-29 17:12
标题: C#字符串中去掉重复字符
本帖最后由 黑马-吕老师 于 2014-5-9 19:12 编辑

在C#中,如何在字符串中去掉重复字符,例如“dabad"去掉重复字符产生新的字符串"dab"
作者: 许庭洲    时间: 2014-4-29 18:27
本帖最后由 许庭洲 于 2014-4-29 21:02 编辑

using System;
using System.Collections.Generic;
using System.Text;

namespace 字符串处理
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("请输入字符串:");
            string str=Console.ReadLine();

            for (int i = 1; i < str.Length; i++)
            {
                if (str[i - 1] == str[i ])              
                {
                    str=str.Remove(i,1);
                }
            }
            Console.WriteLine("{0}", str);
            Console.Read();
        }
    }

作者: vikramorochi    时间: 2014-4-29 20:32
标题: RE: C#字符串中去掉重复字符
许庭洲 发表于 2014-4-29 18:27
using System;
using System.Collections.Generic;
using System.Text;

if里面的条件都不正确
作者: 阿斌    时间: 2014-4-29 21:43
本人亲测有效,希望对你有用吧
  1.             string str = "dabad";
  2.             //使用两层循环,将所有字符进行两两比较,出现重复则删除
  3.             for (int i = 0; i < str.Length; i++)
  4.             {
  5.                 for (int j = i + 1; j < str.Length; j++)
  6.                 {
  7.                     if (str.Substring(i, 1) == str.Substring(j, 1))
  8.                     {
  9.                         str = str.Remove(j, 1);
  10.                     }
  11.                 }
  12.             }

  13.             Console.WriteLine(str);
复制代码

作者: 张旭辉    时间: 2014-4-29 22:30
使用Remove方法、
作者: continue     时间: 2014-4-30 08:42
用一个for加一个list或者字典
List<char> lists = new List<char>();
for(int i=0; i<strs.length; i++)
{
        if(!lists.Continus(strs[i]))        //先判断lists中是否包含当前字符,如果不包含就添加到lists中去
        {
                lists.Add(strs[i]);
        }
}
strs = string.Join("",lists);                //将集合中的内容链接成一个字符串,赋值给源字符串

//我用记事本弄的,有的地方可能写错了,但大概意思你应该明白
作者: liu0o0y    时间: 2014-4-30 08:50
感谢大家的回复,我去试试!
作者: 阿斌    时间: 2014-4-30 12:36
张旭辉 发表于 2014-4-29 22:30
使用Remove方法、

版主,我已经回答了问题,请问能不能给我加个技术分?
作者: 麦田怪圈    时间: 2014-5-9 15:46
涨姿势!
作者: 王运波    时间: 2014-5-9 16:36
阿斌 发表于 2014-4-29 21:43
本人亲测有效,希望对你有用吧

  不错.....




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2