Клас програмиране stringtokenizer, ръководства и примери
Глава 5. Работа с низове
клас StringTokenizer
StringTokenizer клас java.utii малък пакет, има три конструктори и шест методи.
Произход StringTokenizer (ул String) конструктор създава обект, готов да пробие низ гр думи, разделени с интервали, раздели, "\ т ', нов ред" \ п' и връщане '\ R'. Сепаратори не са включени в броя на думите.
Вторият строителя StringTokenizer (String ул. String delimeters) установява Вторият параметър разделители deiimeters. например:
Тук, първият сепаратор - пространство. След това отидете на раздела, нов ред, за връщане, запетая, двоеточие тире. Редът на сепараторите deiimeters линия не е от значение. Сепаратори не са включени в броя на думите.
Третият Конструкторът Ви позволява да включвате сепаратори в броя на думите:
StringTokenizer (String ул, String deiimeters, булев флаг);
Ако сигналът е вярно. разделителите са включени в броя на думи, ако фалшив - не. Например:
StringTokenizer ( "а - (б + в) / Ь * в", "\ т \ п \ г + * - / (), вярно);
В разбор на низ в думи участва активно два метода:
nextToken () метод се връща на следващата дума като низ;
логически hasMoreTokens () метод връща истина. Ако линията все още има думата и невярно. ако няма повече думи.
Трети countTokens () метод връща броя на оставащите думи.
Четвъртият метод nextToken (низови newDeiimeters) позволява "в движение", за да се промени разделителите. Следващата дума ще бъдат заделени за новите сепаратори newDeiimeters; нови сепаратори работят повече дистанционни вместо старата дефинирано в дизайнер или предишния метод nextToken ().
Останалите две методи nextEiement () и hasMoreEiements () осъществяват интерфейса на изброяване. Те просто се отнасят до nextToken () метод и hasMoreTokens ().
Схемата е много проста (виж Обява 5.2).
Обявата 5.2. Разделяне на низ с думи.
Щанга = "линия, която ние искаме да направим от думите";
StringTokenizer во = нов StringTokenizer (S, "\ т \ п \ г,.");
// Получаване на думата и нищо общо с това, например,
// просто показва
Получените думи обикновено са влезли в някои колекции клас: Vector, стека или друг, най-подходящ за по-нататъшна обработка на контейнера за текст. класове Collection ще бъдат обсъдени в следващата глава.