A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 彭书雄 中级黑马   /  2012-8-2 10:11  /  1611 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

昨天遇到一个题  要更换字符串中的某些字符的值,然后找了很多地方 都只有split方法 ,而且字符串都被设置为理想状态的值  例如  str="1,2,3,6,4,8"   string[] s=split(",");
但是实际情况是"123648" 没有逗号其他符号分割    而我要更换2或6的值  拆分有没有更好的办法  感觉split方法不是很通行  除了数组之外  还有别的办法吗?

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

5 个回复

正序浏览
String str = "123648";
string[] s = new string[str.Length];
            for (int i = 0; i < str.Length; i++)
            {
                s[i] =str.subString(i, i+1);
            }
for(int j = 0; j < str.length; j++){
            if ( s[j].equals("2")){
            str[j]="6";
           break;
             }
}

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
给你举个例子:把2改成8      
  static void Main(string[] args)
        {
            string str="123648";
            char[] ch = str.ToCharArray();
            for (int i = 0; i < ch.Length; i++)
            {
                if (ch[i] =='2')
                {
                    ch[i] ='8';
                }
            }
            for (int i = 0; i < ch.Length; i++)
            Console.WriteLine("{0}", ch[i]);
            Console.ReadKey();
        }
   

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
自己写一个方法了,

       private string[] ss(string a)
        {
            string[] s = new string[a.Length];
            for (int i = 0; i < a.Length; i++)
            {
                s[i] = a.Substring(i, 1);
            }
            return s;
        }

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
//ToCharArray 主要将字符串拆分为单个字符输出

string aa = @"a/b\cd";
        char[] s = aa.ToCharArray();
        for (int i = 0; i < s.Length; i++)
        {
            this.TextBox1.Text += s[i].ToString() + " ";
        }

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
用ToCharArray() 方法改变字符串“”123648“”中的某个字符。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马