我要为输入字符串的用户中的每个字符显示字母“ z”

时间:2018-07-05 19:27:54

标签: java android

我的问题是这个。我需要制作一个由字母“ z”组成的字符串。例如,如果用户输入单词“再见”,我想显示字符串“ zzzzzzz”,则单词“ house”将是“ zzzzz”,依此类推。有人可以帮我这种方法吗。

4 个答案:

答案 0 :(得分:1)

我只用正则表达式,看看这个regex cheatsheet

String myWord = "hello";

String newWord = myWord.replaceAll("[^\\d.]", "z");

// prints zzzzz
System.out.println(newWord);

因此,这只会在输出中切换出z的每个字母

答案 1 :(得分:1)

我假设当用户插入要转换为z并在编辑文本上显示的字母时,您要用'z'替换所有用户输入。然后按照下面的代码。

et = findViewById(R.id.et);
et.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
            String s = new String ();
            for(int k = 0; k<charSequence.length(); k++){
            s = s+'z';
          }
          et.setText(s) //charSequence is user current input


        }

        @Override
        public void afterTextChanged(Editable editable) {

        }
    });

答案 2 :(得分:0)

有很多方法可以做到这一点。请参见herehere。这是保留原始字符串的一种方法示例。

String makeZs(String in) {
    StringBuilder b = new StringBuilder();
    for(int i = 0; i < in.length(); ++i) {
        b.append("z");
    }
    return b.toString();
}

答案 3 :(得分:0)

您可以尝试一下。

public String toZstring(String userString){

    String zString = "";

    for(int i = 0; i < userString.length(); i++){
        zString = zString + "z";
    }

    return zString;

}