1. Обзор
java.util.Scanner
имеет множество методов, которые мы можем использовать для проверки входных данных. Одним из них является метод skip()
.
В этом уроке мы узнаем, для чего нужен метод skip()
и как его использовать .
2. Метод Scanner.skip()
Метод skip()
принадлежит классу сканера Java.
Он используется для пропуска входных данных, которые соответствуют указанному шаблону, переданному в параметре метода, игнорируя разделители.
2.1. Синтаксис
Метод skip()
имеет две сигнатуры перегруженного метода :
skip(Pattern pattern)
– принимает в качестве параметра шаблон, которыйСканер
должен пропуститьskip(String pattern)
– принимает в качестве параметрастроку
, определяющую шаблон для пропуска
2.2. Возвращает
skip()
возвращает объект Scanner
, который удовлетворяет шаблону, указанному в аргументе метода. Он также может генерировать два типа исключений : IllegalStateException
, если сканер закрыт, и NoSuchElementException
, если для указанного шаблона не найдено совпадений.
Обратите внимание, что можно что-то пропустить, не рискуя получить исключение NoSuchElementException
, используя шаблон, который не может ничего сопоставить, например, skip
("[ \t]*").
3. Примеры
Как мы упоминали ранее, у метода skip
есть две перегруженные формы. Во-первых, давайте посмотрим, как использовать метод skip
с Pattern
:
String str = "Java scanner skip tutorial";
Scanner sc = new Scanner(str);
sc.skip(Pattern.compile(".ava"));
Здесь мы использовали метод skip(Pattern)
для пропуска текста, соответствующего шаблону «.ava».
Точно так же метод skip(String)
будет пропускать текст, соответствующий заданному шаблону, созданному из данной строки String
. В нашем примере мы пропускаем строку «Java»:
String str = "Java scanner skip tutorial";
Scanner sc = new Scanner(str);
sc.skip("Java");
Короче говоря, результат обоих методов одинаков при использовании шаблона или строки .
4. Вывод
В этой короткой статье мы проверили, как работать с методом skip() класса
java.util.Scanner
, используя параметр String
или Pattern
.
Как всегда, код, использованный во время обсуждения, доступен на GitHub .