通过更改

时间:2015-10-30 00:14:39

标签: java arrays for-loop replace

我正在尝试做一些关于元素数组的基础知识,特别是字符。我的问题是,如何让程序逐个打印我的更改?例如(我不希望我的输出在一个实例中从“月亮”变为“mOOn”,而是从“月亮”到“mOon”到“mOOn”,就像那样。这是我的代码。

import java.util.*;

public class Practice 
{
public static void main(String[] args)
 {  
    String array[] = {"uuuuuuuupppppppssssssssss"};
    System.out.println(Arrays.toString(array));

    for (int i = 0; i < array.length; i++)
    {
        System.out.println(array[i] = array[i].replace('p', 'P'));
        //trying to print each change here
    }
 }
}

再次感谢!

编辑/更新:我得到输出以使循环正确,但输出仍然不是我想要的(基本上输出:uPPPPPPS,uPPPPPP,uPPPPP等,直到p的长度结束)。关于我能做什么的任何暗示?谢谢!

public static void main(String[] args){
  String array = "uuuuuuuupppppppssssssssss";
  System.out.println(array);
  char[] chars = array.toCharArray(): //converted 

  for (int i = 0; i < chars.length; i++) {
         if (chars[i] == 'p') {
                System.out.println(array.replace('p', 'P'));
            }
      }
 }

2 个答案:

答案 0 :(得分:0)

public static void main(String[] args)
{
    String array = "uuuuuuuupppppppssssssssss";
    System.out.println(array);

    while ( array.contains("p") )
    {
        array = array.replaceFirst("p", "P");
        System.out.println(array);
    }
}

答案 1 :(得分:-1)

尝试更改值,然后在循环内打印数组。

for (int i = 0; i < array.length; i++)
{
 array[i] = array[i].replace('p', 'P')
 System.out.println(Arrays.toString(array));
}