Maison >développement back-end >C++ >Comment puis-je convertir les numéros de base 10 en une base de .NET?
Dans divers scénarios de programmation, il est courant de convertir les nombres décimaux en autres progrès. La prise en charge de .NET Framework pour cette opération est limitée, mais elle peut réaliser une méthode personnalisée qui convertit les nombres en n'importe quel en-lesws avec n'importe quel personnage.
convert.toString () ne peut convertir les nombres que ce qui suit: 2, 8, 10 ou 16. Si vous devez utiliser des progrès non standard, cette limite peut être limitée.
La réalisation personnalisée des avancés et correspondants arbitrairement
Pour convertir les numéros en n'importe quel avancement, vous pouvez implémenter une méthode personnalisée. Une méthode simple est la suivante:
Cette méthode est itérée avec le numéro d'entrée divisé par la cible et a joint le numéro restant à la chaîne de résultats. Les résultats construits dans l'ordre opposé, et le numérique à l'extrême droite est apparu en premier.Optimisation: utilisez le tampon du tableau
<code class="language-csharp">public static string IntToString(int value, char[] baseChars) { string result = string.Empty; int targetBase = baseChars.Length; do { result = baseChars[value % targetBase] + result; value = value / targetBase; } while (value > 0); return result; }</code>
Afin d'améliorer les performances de grands nombres, il est recommandé d'utiliser un tampon de tableau au lieu de la connexion de la chaîne:
Cette optimisation est particulièrement efficace pour les grands nombres avec de nombreux chiffres dans les progrès cibles. Pour les petits nombres (un nombre de chiffres dans la cible), l'intostration est généralement plus rapide.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!