多くの開発者は、小数を迅速かつ効果的に他のプログレッシブ生産に変換する必要があります。 .NETは関数を提供しますが、16、10、8、および2番目のinのみをサポートします。より一般的な変換のために、ソリューションをカスタマイズする必要があります。
一般的に使用される方法には、次の手順が含まれています。
方法:
Convert.ToString(number, x)
初期化された結果文字列:
空の文字列を使用して、変換結果を保存します。
ターゲットの進捗状況を取得:ターゲットの進行状況に変換されます。
数値の移動:- 数値の移動、ターゲットが作成された後の残りの数値を計算します。
結果の文字列に追加:
残り(インレット文字セットの文字として)を結果文字列に追加します。 -
数字を除く:数値をターゲットに分割し、数値がゼロになるまでステップ3-5を繰り返します。
-
この方法はシンプルで明確で、効率は比較的高くなっています。ただし、最高のパフォーマンスを得るために、次を考慮してください。
パフォーマンスの向上:
-
アレイバッファーの使用:
文字列接続ではなく、アレイバッファーの累積結果文字を使用します。 -
バッファサイズを最適化します:予想される結果の長さに応じて適切なバッファサイズを選択します。
逆結果文字列:
配列が充填された後、それを逆にして正しい順序を取得します。
の実装の例:
以下は、元の方法と最適化方法を含むアルゴリズムのc#例です。
-
この最適化方法は、多数のパフォーマンスを大幅に改善したり、多数の文字に変換したりできます。
以上がベース10の数値を.NETの任意のベースに効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。