Como faço para converter uma string em um número inteiro?
Eu tenho uma caixa de texto onde o usuário insere um número:
EditText et = (EditText) findViewById(R.id.entry1);
String hello = et.getText().toString();
E o valor é atribuído à sequência hello
.
Quero convertê-lo em um número inteiro para obter o número digitado; será usado mais tarde no código.
Existe uma maneira de obter o EditText
para um número inteiro? Isso pularia o intermediário. Caso contrário, a string para número inteiro ficará bem.
Respostas:
Veja a classe Integer e o
parseInt()
método estático :http://developer.android.com/reference/java/lang/Integer.html
Você precisará capturar,
NumberFormatException
em caso de problemas durante a análise, portanto:fonte
fonte
Use expressão regular:
saída: i = 1234;
Se você precisar da combinação do primeiro número, tente o código abaixo:
saída: i = 123;
fonte
Use expressão regular:
resultado:
fonte
Usar expressão regular é a melhor maneira de fazer isso, como já mencionado por ashish sahu
fonte
Experimente este código que está realmente funcionando.
fonte
A melhor maneira de converter sua string em int é:
fonte
Você deve ocultar String para flutuar. Está funcionando.
fonte
Você pode usar o seguinte para analisar uma string em um número inteiro:
int valor = Integer.parseInt (textView.getText (). toString ());
(1) input: 12 então funcionará .. porque o textview assumiu esse número 12 como uma string "12".
(2) input: "abdul" então lançará uma exceção que é NumberFormatException. Então, para resolver isso, precisamos usar o try catch como mencionei abaixo:
Você também pode consultar o seguinte link para obter mais informações: http://developer.android.com/reference/java/lang/Integer.html
fonte
Você também pode fazer uma linha:
Leitura da ordem de execução
findViewById(R.id.button1)
((Button)______)
para lançarView
comoButton
.GetText()
para obter a entrada de texto do botão.toString()
para converter o caractere variável em uma string.ReplaceAll()
com"[\\D]"
a substituir todos os caracteres não dígitos com "" (nada)Integer.parseInt()
grab e retorne um número inteiro fora da string Digit-only.fonte
O método muito mais simples é usar o
decode
método deInteger
exemplo, por exemplo:fonte
Kotlin
Existem métodos de extensão disponíveis para analisá-los em outros tipos primitivos.
"10".toInt()
"10".toLong()
"true".toBoolean()
"10.0".toFloat()
"10.0".toDouble()
"10".toByte()
"10".toShort()
Java
fonte
Existem cinco maneiras de converter The First Way:
A segunda maneira:
A terceira via:
O quarto caminho:
O Quinto Caminho:
Poderia haver outras maneiras Mas é disso que eu lembro agora
fonte