簡體   English   中英

Char 到 Int,將 int 值改回 char,並添加到字符串

[英]Char to Int, change int value, back to char, and add to a string

我覺得我非常接近解決這個問題。 提供一個字符串,我想將字符串從字符串轉換為 int,將另一個方法 ( getKey ) 的值添加到該數字,如果結果大於 26,則減去 26。然后,將此新int轉換為其char ,最后將該char放在string的末尾。 截至目前,它只是返回減去空格的輸入,這是一半,哈哈。 有趣的是,替換

msg.replace(msg.charAt(i), btc);   // from the bottom

msg += btc;

啟動無限循環。 任何建議將不勝感激!

    String msg = "";
    int key;
    int cnum;
    for(int i = 0; i< message.length();i++){
        if(Character.isLetter(message.charAt(i))){
            msg += (message.charAt(i));
        }
    }



    for(int i = 0; i< msg.length(); i++){  

        char ch = msg.charAt(i);
        key = getKey();

            cnum = (int)ch + key;
            if(cnum > 26){
                cnum -= 26;
            }

        char btc = (char)cnum;
        msg.replace(msg.charAt(i), btc);
    }

return msg;

替換msg.replace(msg.charAt(i), btc); with msg = msg.replace(msg.charAt(i), btc);

你的問題是在線

msg.replace(msg.charAt(i), btc);

由於 String 是不可變的,因此 String.replace() 將返回一個新字符串而不是修改現有的 String。

我建議您使用 StringBuilder(),附加替換的字符或附加現有的字符。

暫無
暫無

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

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