En el artículo Verificar si una string dada es un número válido , hemos discutido el enfoque general para verificar si una string es un número válido o no. En Java, podemos usar los métodos parse() de las clases Wrapper junto con los bloques try-catch para buscar un número.
Para número entero
La clase Integer proporciona un método estático parseInt() que lanzará NumberFormatException si String no contiene un int analizable . Atraparemos esta excepción usando el bloque catch y así confirmaremos que la string dada no es un número entero válido. A continuación se muestra el programa java para demostrar lo mismo.
Implementación:
Java
// Java program to check whether given string // is a valid integer number class GFG { public static void main(String[] args) { String input1 = "abc"; String input2 = "1234"; try { // checking valid integer using parseInt() // method Integer.parseInt(input1); System.out.println( input1 + " is a valid integer number"); } catch (NumberFormatException e) { System.out.println( input1 + " is not a valid integer number"); } try { // checking valid integer using parseInt() // method Integer.parseInt(input2); System.out.println( input2 + " is a valid integer number"); } catch (NumberFormatException e) { System.out.println( input2 + " is not a valid integer number"); } } }
abc is not a valid integer number 1234 is a valid integer number
Para número flotante
La clase Float proporciona un método estático parseFloat() que lanzará NumberFormatException si String no contiene un flotante analizable . Capturaremos esta excepción usando el bloque catch y así confirmaremos que la string dada no es un número flotante válido. Si la string es nula , este método arrojará NullPointerException . A continuación se muestra el programa java para demostrar lo mismo.
Implementación:
Java
// Java program to check whether given string // is a valid float number. class GFG { public static void main(String[] args) { String input1 = "10e5.4"; String input2 = "2e10"; try { // checking valid float using parseInt() method Float.parseFloat(input1); System.out.println( input1 + " is a valid float number"); } catch (NumberFormatException e) { System.out.println( input1 + " is not a valid float number"); } try { // checking valid float using parseInt() method Float.parseFloat(input2); System.out.println( input2 + " is a valid float number"); } catch (NumberFormatException e) { System.out.println( input2 + " is not a valid float number"); } } }
10e5.4 is not a valid float number 2e10 is a valid float number
Para números grandes
Podemos usar constructores de clase BigInteger y BigDecimal para números grandes. A continuación se muestra el programa java para demostrar lo mismo.
Implementación:
Java
// Java program to check whether given string // is a valid number. import java.math.BigDecimal; import java.math.BigInteger; class GFG { public static void main(String[] args) { String input1 = "1231456416541214651356151564651954156"; String input2 = "105612656501606510651e655.4"; String input3 = "2e102225"; try { // checking valid integer number using // BigInteger constructor new BigInteger(input1); System.out.println( input1 + " is a valid integer number"); } catch (NumberFormatException e) { System.out.println( input1 + " is not a valid integer number"); } try { // checking valid float number using BigDecimal // constructor new BigDecimal(input2); System.out.println( input2 + " is a valid float number"); } catch (NumberFormatException e) { System.out.println( input2 + " is not a valid float number"); } try { // checking valid float number using BigDecimal // constructor new BigDecimal(input3); System.out.println( input3 + " is a valid float number"); } catch (NumberFormatException e) { System.out.println( input3 + " is not a valid float number"); } } }
1231456416541214651356151564651954156 is a valid integer number 105612656501606510651e655.4 is not a valid float number 2e102225 is a valid float number
Este artículo es una contribución de Gaurav Miglani . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA