ホームページ  >  記事  >  Java  >  Java は文字列内のスペースを置換するためのアイデアとコードを実装します

Java は文字列内のスペースを置換するためのアイデアとコードを実装します

PHPz
PHPzオリジナル
2017-04-23 14:53:412479ブラウズ

問題の説明:

文字列内のスペースを「%20」に置き換える関数を実装してください。たとえば、文字列が We Are Happy. の場合、置換される文字列は We%20Are%20Happy になります。

文字列内のスペースを置換する Java の基本的な考え方:

逆の順序で置換し、時間を短縮する

実装計画:

  • 文字列 一度初期化すると変更することはできません。

  • Niuke.com のテンプレートのため StringBuffer を使用します。

  • 実際に使用する場合は、ロックフリーで効率が高いため、シングルスレッドの StringBuilder を使用することをお勧めします。

  • マルチスレッドでは StringBuffer を使用します。

  • 両方の組み込み関数は同じです

考え:

  • 元の文字列を変更するか、新しい文字列を作成します (元の文字列の場合は、長さをリセットする必要があります setLength() )

  • 既存の replace()

Java コードを使用して文字列内のスペースを置換することは考慮しないでください:

public static String replaceSpace(StringBuffer str){        
        int length = str.length();        int spacenum = 0;        
        //统计空格字符个数
        for(int i=0;i<length;i++){            if(str.charAt(i) == &#39; &#39;)
                spacenum++;
        }        
        int lengthNew = length + spacenum*2;
        str.setLength(lengthNew);        int index = length-1;        int indexNew = lengthNew-1;        for(;index>=0;index--){            
            if(str.charAt(index) == &#39; &#39;){
                str.setCharAt(indexNew--, &#39;0&#39;);
                str.setCharAt(indexNew--, &#39;2&#39;);
                str.setCharAt(indexNew--, &#39;%&#39;);
            }            else{
                str.setCharAt(indexNew--, str.charAt(index));
            }
        }        return str.toString();
    }

さて、この記事はこれで終わりです。アドバイスを歓迎します。興味があれば、PHP 中国語 Web サイトオンライン Java ビデオ チュートリアル

を勉強してください。

以上がJava は文字列内のスペースを置換するためのアイデアとコードを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。