簡體   English   中英

我要為輸入字符串的用戶中的每個字符顯示字母“ z”

[英]I want to display letter 'z' for each character in a String user enters

我的問題是這個。 我需要制作一個由字母“ z”組成的字符串。 例如,如果用戶輸入單詞“再見”,我想顯示字符串“ zzzzzzz”,則單詞“ house”將是“ zzzzz”,依此類推。 有人可以幫我這種方法。

我只用regex,看看這個regex速查表

String myWord = "hello";

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

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

因此,這只會將輸出中的每個字母切換為z

我假設您要在用戶插入要轉換為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) {

        }
    });

有很多方法可以做到這一點。 看到這里這里 這是保留原始字符串的一種方法示例。

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

你可以試試看

public String toZstring(String userString){

    String zString = "";

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

    return zString;

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM