c convert string int using parse
Tutorial sobre como converter string para int em C #. Você aprenderá vários métodos de conversão, como Parse, TryParse e Convert com base nos requisitos:
qual é a chave de segurança de rede em um roteador
A maioria de nós já passou por essa situação de vez em quando, quando precisamos converter uma String em um tipo de dados inteiro.
Por exemplo, digamos que eu receba uma string “99” de uma fonte de dados (do banco de dados, entrada do usuário, etc), mas precisamos dela como um inteiro para realizar alguns cálculos, aqui, primeiro precisaremos convertê-la em um inteiro antes de começar algumas operações aritméticas.
Existem várias maneiras de fazer isso e vamos dar uma olhada em alguns dos métodos amplamente usados.
=> Confira a série completa de treinamento C # aqui
O que você aprenderá:
- Método Int.Parse
- Método System.Convert
- Método int.ExperimenteParse
- Convertendo String Não Numérica em Inteiro
- Conclusão
- Leitura recomendada
Método Int.Parse
O método Int.Parse funciona como maravilhas se você tiver certeza de que sua conversão nunca gerará um erro. Esta é uma das maneiras mais fáceis e simples de converter uma string em um inteiro. Pode gerar um erro se a conversão não for bem-sucedida.
Este método é usado principalmente quando você tem um inteiro na forma de string. Por exemplo, você recebe um numeral de string de uma entrada do usuário como “99”. Vamos tentar um programa simples para converter essa string em um inteiro.
Programa
Programa de classe pública
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
Resultado
O resultado do programa acima:
99
Explicação
O programa retornará o valor numérico da string.
A parte complicada de usar o método int.Parse é o problema de gerar um erro se a string não estiver em um formato correto, ou seja, se uma string contiver qualquer caractere diferente de numerais.
Se qualquer caractere diferente de numeral estiver presente, este método gerará o seguinte erro:
“(System.FormatException: Input string was not in a correct format.)”
Método System.Convert
Outra maneira de converter uma string em inteiro é usando o método Convert. Este método não é tão simples quanto o método anterior, pois devemos estar prontos para tratar qualquer exceção que possa ocorrer devido à interação do programa com dados errôneos.
abrir um arquivo apk no windows
As exceções também podem consumir muita memória, portanto, não é aconselhável encontrar qualquer exceção desejada ou indesejada durante o fluxo de execução. Por exemplo, se ocorrer uma exceção em um loop, muita memória será consumida para lançá-los e, portanto, tornará seu programa lento.
Usar o método Convert é muito útil se você quiser saber o motivo da falha da análise. Ele pode capturar a exceção e mostrar os detalhes da falha.
Programa
public class Program { public static String intString = '123'; public static void Main(string() args) { int i = 0; try { i = System.Convert.ToInt32(intString); } catch (Exception e) { } Console.WriteLine('The converted int is : '+i); } }
Resultado
“O int convertido é: 123”
Explicação
No programa acima, usamos o método convert para converter uma string em um inteiro. Aqui, se a variável String for numeral, ela será convertida em número inteiro, mas no caso de uma string incorreta, gerará uma exceção que será tratada pelo bloco catch.
Método int.ExperimenteParse
Uma das maneiras mais comuns de analisar uma representação de string em um inteiro de 32 bits é usando o método TryParse. Este método não considera nenhum espaço em branco antes ou depois da string, mas todos os outros caracteres da string devem ser de um tipo numérico apropriado para facilitar a conversão.
Por exemplo, qualquer espaço em branco, alfabeto ou caractere especial dentro da variável pode causar um erro.
O método TryParse aceita dois parâmetros, o primeiro é a string que o usuário deseja converter e o segundo parâmetro é a palavra-chave “out” seguida pela variável na qual você deseja armazenar o valor. Ele retornará um valor com base no sucesso ou falha da conversão.
TryParse(String, out var)
Vamos dar uma olhada em um programa simples para converter uma string numérica em um inteiro.
Programa
class Program { static void Main(string() args) { try { string value = '999'; int numeric; bool isTrue = int.TryParse(value, out numeric); if (isTrue) { Console.WriteLine('The Integer value is ' + numeric); } } catch (FormatException e) { Console.WriteLine(e.Message); } } }
Resultado
O valor inteiro é 999
Explicação
No programa acima, usamos ‘TryParse’ para converter a string numérica em um inteiro. Primeiro, definimos uma variável de string que precisamos converter. Em seguida, inicializamos outra variável “numérica” do tipo inteiro. Em seguida, usamos uma variável booleana para armazenar o valor de retorno do try parse.
Se retornar verdadeiro, significa que a string foi convertida com sucesso em um inteiro. Se retornar falso, há algum problema com a string de entrada. Envolvemos todo o fragmento do programa dentro do bloco try-catch para tratar qualquer exceção que possa ocorrer.
Convertendo String Não Numérica em Inteiro
Em todos os programas acima, tentamos converter o valor da string numérica em inteiro, mas no cenário do mundo real, na maioria das vezes, temos que lidar com strings que contêm caracteres especiais, alfabetos junto com os numerais. Se quisermos obter apenas o valor numérico, pode ser um pouco difícil.
Por exemplo, temos uma string de preço com um valor de $ 100 e precisamos obter o preço em número inteiro. Nesse caso, se tentarmos usar qualquer uma das abordagens discutidas acima, obteremos uma exceção.
Esses tipos de cenários podem ser manipulados facilmente usando um loop for e regex após dividir uma string em uma matriz de caracteres.
Vamos dar uma olhada no programa:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i Resultado
O valor numérico do preço é: 100
Explicação:
diferença entre plano de teste e estratégia de teste
No código acima, temos uma variável de preço do tipo de dados string. Em seguida, definimos e inicializamos outra variável de string priceNumeric. A ideia é usá-lo para conter a parte numérica da variável de preço.
Em seguida, usamos um loop for para verificar cada caractere da string em busca de números. Para fazer isso, primeiro buscamos os caracteres na variável ch usando o índice. Em seguida, usamos a expressão regex para verificar se o caractere que escolhemos da string corresponde a qualquer dígito numérico ou não. (A expressão “ d” de Regex denota correspondência com um único dígito numérico.).
Em seguida, concatenamos e armazenamos a string numeral na variável priceNumeric. Assim que o loop terminar, todas as suas cadeias numéricas serão adicionadas a esta variável e todos os outros caracteres, incluindo caracteres especiais, alfabetos, etc. serão removidos.
Como sabemos, essa string agora contém apenas os caracteres numéricos, e podemos usar diretamente o convert para transformar essa string em um inteiro.
Conclusão
Neste tutorial, aprendemos como podemos converter uma string em um inteiro. Também aprendemos a usar os diferentes métodos que podem ser usados para conversão com base no requisito.
Leitura sugerida = >> Como converter String em Integer em Java E Como converter Inteiro em String em Java
A seguir, discutimos um programa para converter strings com caracteres especiais ou alfabetos em um inteiro, removendo as partes não inteiras. Este programa de exemplo pode ser ajustado conforme a necessidade do usuário e pode ser usado para recuperar dados numéricos de qualquer string.
=> Leia o guia C # para iniciantes aqui
Leitura recomendada
- Tutorial de string C # - Métodos de string com exemplos de código
- Tutorial Java String com String Buffer e String Builder
- Threads Java com métodos e ciclo de vida
- Funções de string Python
- Tutorial de divisão de string em Python
- Aprenda a usar a classe StringBuilder C # e seus métodos com exemplos
- Scripting Unix Shell avançado: matrizes, operadores de teste de arquivo e string, variáveis especiais
- Número aleatório C # e gerador de string aleatório C # com exemplos de código