Упражнения для Java String: проверьте, содержит ли данная строка только цифры

Строка Java: Упражнение-101 с решением

Напишите программу на Java, чтобы проверить, содержит ли данная строка только цифры. Вернуть истину или ложь.

Пример решения-1:

Код Java:

  открытый класс Main {public static void main (String [] args) {String digit_string1 = "131231231231231231231231231212312312";  Строка digit_string2 = "13123123123Z1231231231231231212312312";  System.out.println ("Первая строка:");  System.out.println (digit_string1);  логический результат1 = test_only_digits (digit_string1);  System.out.println (результат1);  System.out.println (" n Вторая строка:");  System.out.println (digit_string2);  логический результат2 = test_only_digits (digit_string2);  System.out.println (результат2);  } public static boolean test_only_digits (String digit_string) {for (int i = 0; i  

Пример вывода:

 Первая строка: 131231231231231231231231231212312312true Вторая строка: 13123123123123123123123123123123123123123123123123123123123123  

Наглядное представление:


Блок-схема:

Пример решения-2:

Код Main.java:

 //Лицензия MIT: https://bit.ly/35gZLa3import java.util.concurrent.TimeUnit  ; общественный класс Main {частный статический финал Строка ONLY_DIGITS = "45566336754493420932877387482372374982374823" + "749823283974232237238472392309230923849023848234580383485342234287943943094" + "234745374657346578465783467843653748654376837463847654382382938793287492326", частные статические финальные NOT_ONLY_DIGITS String = «45566336754  493420932877387482372374982374823 "+" 749823283974232237238472392309230923849023848234580383485342234287943943094 "+" 23474537465734657846578346784365374865437632382984638;  public static void main (String [] args) {System.out.println ("Введите текст только цифрами:  n" + ONLY_DIGITS + " n");  System.out.println ("Введите текст с другими символами:  n" + NOT_ONLY_DIGITS + " n");  System.out.println ("Решение для Character.isDigit ():");  long startTimeV1 = System.nanoTime ();  логическое onlyDigitsV11 = Strings.containsOnlyDigitsV1 (ONLY_DIGITS);  логическое onlyDigitsV12 = Strings.containsOnlyDigitsV1 (NOT_ONLY_DIGITS);  displayExecutionTime (System.nanoTime () - startTimeV1);  System.out.println ("Содержит только цифры:" + onlyDigitsV11);  System.out.println ("Содержит только цифры:" + onlyDigitsV12);  System.out.println ();  System.out.println ("Решение String.matches ():");  long startTimeV2 = System.nanoTime ();  логическое onlyDigitsV21 = Strings.containsOnlyDigitsV2 (ONLY_DIGITS);  только логическое значение DigitsV22 = Строки. containsOnlyDigitsV2 (NOT_ONLY_DIGITS);  displayExecutionTime (System.nanoTime () - startTimeV2);  System.out.println ("Содержит только цифры:" + onlyDigitsV21);  System.out.println ("Содержит только цифры:" + onlyDigitsV22);  System.out.println ();  System.out.println ("Java 8, функциональное решение:");  long startTimeV3 = System.nanoTime ();  логическое onlyDigitsV31 = Strings.containsOnlyDigitsV3 (ONLY_DIGITS);  логическое onlyDigitsV32 = Strings.containsOnlyDigitsV3 (NOT_ONLY_DIGITS);  displayExecutionTime (System.nanoTime () - startTimeV3);  System.out.println ("Содержит только цифры:" + onlyDigitsV31);  System.out.println ("Содержит только цифры:" + onlyDigitsV32);  } private static void displayExecutionTime (long time) {System.out.println ("Время выполнения:" + время + "нс" + "(" + TimeUnit.MILLISECONDS.convert (время, TimeUnit.NANOSECONDS) + "мс)")  ;  }}  

Код Strings.java:

 //Лицензия MIT: https: //bit.ly/35gZLa3public final class Strings {private Strings () {throw new AssertionError ("Невозможно создать экземпляр");  }//Примечание: для дополнительных символов Unicode используйте codePointAt () вместо charAt ()//и codePoints () вместо chars () public static boolean containsOnlyDigitsV1 (String str) {if (str == null || str.isEmpty (  )) {//или выбросить исключение IllegalArgumentException return false;  } for (int i = 0; i! Character.isDigit (n));  }} Код> 

Пример вывода:

Ввод текста только с цифрами: 45566336754493420932877387482372374982374823749823283974232237238472392309230923849023848234580383485342234287943943094234745374657346578465783467843653748654376837463847654382382938793287492326Input текст с другими персонажами: 45566336754493420932877387482372374982374823749823283974232237238472392309230923849023848234580383485342234287943943094234745374657346578465783467843653748654376837463847654382382938793287492326ACharacter.isDigit () решение: Время выполнения: 1279465 нс (1 мс) Содержит только цифры: true Содержит только цифры: falseString.matches () решение: Время выполнения: 2059497 нс (2 мс) Содержит только цифры: true Содержит только цифры: falseJava 8, решение функционального стиля: Время выполнения: 114091339 нс (114 мс) Содержит только цифры: trueСодержит только цифры: false

Блок-схема:


Редактор кода Java:

Предыдущий: Напишите программу Java, чтобы проверить, задан ли строка содержит другую строку. Верните true или false.
Далее: Напишите программу на Java для преобразования заданной строки в int, long, float и double.

Оцените статью
nanomode.ru
Добавить комментарий