请求写一个方法 
如STRING ="00000"
替换符合条件指定位置的字符串
如替换后成“01010”
新字符串在第2和4位置符合一定条件进行替换

解决方案 »

  1.   

    转成字符数组
    toCharArray()
      

  2.   

    把一个字符换成另一个字符的话,可以采用楼上说的toCharArray();如果是把一个字符换成一个字符串的话,可以采用StringBuffer的replace方法。
      

  3.   


    public class A
    {
    public static void main(String[] args) 
    {
    String str="00000";
    int i=0;
    if(i==0)
    {
    char[] ch=str.toCharArray();
    ch[1]='1';
    ch[3]='1';
    System.out.println(String.valueOf(ch));
    }
    }
    }其实不太明白你要问什么!
      

  4.   

    package ujhjhjh;public class vcv { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub String dfd="00000";
    char s='1';
    String jmmm[]=new String[5];
    jmmm[0]="1";
    jmmm[1]="0";
    jmmm[2]="1";
    jmmm[3]="0";
    jmmm[4]="1";
    int bb =getcount(dfd,s,jmmm);
    System.out.println("bbb"+bb);
    }
    public static int getcount(String s1,char s2,String[] s3){
    int count=0;
    String s4="";
    for (int i=0;i<s3.length;i++){
    if(s3[i].equals("1")){
    //s1.replace(s1.charAt(i), '1');
    s4=s1.substring(0, i)+"1"+s1.substring(i+1);
    s1=s4;
    }
    //if(s1.charAt(i)==s2){
    // count++;
    //}
    System.out.println("s1"+s1);
    System.out.println("s4"+s4);
    }
    return count;
    }
    }自己用土办法弄出一个 不知道各位有什么好方法不?
      

  5.   

    可以用Pattern+Martch来匹配位置,然后用replace来替换字符。例如把0a0a0里所有的a替换成1,代码如下:
            StringBuffer strBuff = new StringBuffer("0a0a0");
            Matcher matcher = Pattern.compile("a").matcher(strBuff.toString());
            int index = 0;
            while(matcher.find(index))
            {
                strBuff.replace(matcher.start(), matcher.end(), "1");
                index = matcher.end();
                matcher.reset();
            }
            
            System.out.println(strBuff);
    这个例子比较简单,但利用正则表达式你可以匹配出真复杂的情况。