Java Java类设置 2
Java中的 StringTokenizer 类 |设置 1
方法:
- parseNumbers() : Java.io.StreamTokenizer.parseNumbers()指定解析StreamTokenizer中的数字,使得每个字符——“0,1,2,3,4,5,6,7,8,9”都有一个数字属性。
当解析器遇到具有双精度浮点数格式的单词标记时,它会将标记视为数字而不是单词,方法是将 ttype 字段设置为值 TT_NUMBER 并将标记的数值放入nval 字段。
句法 :public void parseNumbers() Parameters : ----------- Return : void
执行 :
// Java Program illustrating use of parseNumbers() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); // Use of parseNumbers() method // specifies that the number in StreamTokenizer is parsed token.parseNumbers(); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_NUMBER: System.out.println("Number : " + token.nval); break; case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:你好极客 1
这 2
3是
约 4
解析数字()输出 :
Word : Hello Word : Geeks Number : 1.0 Word : This Number : 2.0 Number : 3.0 Word : is Word : about Number : 4.0 Word : parseNumbers
- quoteChar() : Java.io.StreamTokenizer.quoteChar(int arg)指定它将匹配字符分隔为 StreamTokenizer 中的字符串常量。
当 nextToken 方法遇到字符串常量时,将 ttype 字段设置为字符串分隔符,将 sval 字段设置为字符串的正文。
句法 :public void quoteChar(int arg) Parameters : arg : the character to be dilimit Return : void
执行 :
// Java Program illustrating use of quoteChar() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); // specify o as a quote char token.quoteChar('o'); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; case StreamTokenizer.TT_NUMBER: System.out.println("Number : " + token.nval); break; default: System.out.println((char) t + " encountered."); } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:你好
极客
这
是
关于
报价字符()输出 :
Word : Hell o encountered. Word : Geeks Word : This Word : is Word : ab o encountered. Word : qu o encountered.
- resetSyntax() : Java.io.StreamTokenizer.resetSynatx()在遇到数字时重置语法,以便在 StreamTokenizer 中将所有字符设置为“普通”。
句法 :public void resetSyntax() Parameters : --------- Return : void
执行 :
// Java Program illustrating use of resetSyntax() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; case StreamTokenizer.TT_NUMBER: // Use of resetSyntax() token.resetSyntax(); System.out.println("Number : " + token.nval); break; default: System.out.println((char) t + " encountered."); } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:你好
这
是
重置语法()
1个样本
2 🙂
3
输出 :Word : Hello Word : This Word : is Word : resetSyntax ( encountered. ) encountered. Number : 1.0 encountered. x encountered. m encountered. p encountered. l encountered. encountered. encountered. 2 encountered. encountered. : encountered. ) encountered. encountered. encountered. 3 encountered.
- slashSlashComments() : Java.io.StreamTokenizer.slashSlashComments(boolean arg)指定是否考虑 C++ – 标记器的样式注释。如果 'arg' 设置为 true,则 StreamTokenizer 识别并忽略 C++ 样式注释。 '//' 被认为是评论的开始。
如果 flag 参数为 false,则不会对 C++ 样式的注释进行特殊处理。
句法 :public void slashSlashComments(boolean arg) Parameters : arg : tells whether to recognise and ignore C++ - style comments or not. Return : void
执行 :
// Java Program illustrating use of slashSlashComments() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); // Use of slashSlashComments() // Here 'arg' is set to true i.e. to recognise and ignore C++style Comments boolean arg = true; token.slashSlashComments(arg); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; case StreamTokenizer.TT_NUMBER: System.out.println("Number : " + token.nval); break; } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:这个程序是关于 slashSlashComments // 方法
此方法将 ABC.txt 文件中的“方法”视为注释,因此忽略它。
输出 :Word : This Word : program Word : is Word : about Word : slashSlashComments
- slashStarComments() : Java.io.StreamTokenizer.slashStarComments(boolean arg)指定是否考虑分词器的 C 风格注释。如果 'arg' 设置为 true,则 StreamTokenizer 识别并忽略 C 样式注释。 '/*……*/' 被视为注释。
句法 :public void slashStarComments(boolean arg) Parameters : arg : tells whether to recognise and ignore C - style comments or not. Return : void
执行 :
// Java Program illustrating use of slashStarComments() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); // Use of slashStarComments() // Here 'arg' is set to true i.e. to recognise and ignore Cstyle Comments boolean arg = true; token.slashStarComments(true); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; case StreamTokenizer.TT_NUMBER: System.out.println("Number : " + token.nval); break; } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:这个程序是关于 slashStarComments /* 方法 */ 123
此方法将 ABC.txt 文件中的“方法”视为注释,因此忽略它。
输出 :Word : This Word : program Word : is Word : about Word : slashStarComments Number : 123.0
- whitespaceChars() : Java.io.StreamTokenizer.whitespaceChars(int low, int high)将low到high范围内的所有字符指定为空白,仅用于分隔InputStream中的token。
句法 :public void whitespaceChars(int low, int high) Parameters : low : lower range of character to be white spaced. high : higher range of character to be white spaced Return : void
执行 :
// Java Program illustrating use of whitespaceChars() method import java.io.*; public class NewClass { public static void main(String[] args) throws InterruptedException, FileNotFoundException, IOException { FileReader reader = new FileReader("ABC.txt"); BufferedReader bufferread = new BufferedReader(reader); StreamTokenizer token = new StreamTokenizer(bufferread); // Use of whitespaceChars() method // Here range is low = 'a' to high = 'c' token.whitespaceChars('a','d'); int t; while ((t = token.nextToken()) != StreamTokenizer.TT_EOF) { switch (t) { case StreamTokenizer.TT_WORD: System.out.println("Word : " + token.sval); break; case StreamTokenizer.TT_NUMBER: System.out.println("Number : " + token.nval); break; } } } }
笔记 :
该程序不会在此处运行,因为不存在“ABC”文件。您可以在系统上的Java编译器上检查此代码。
要检查此代码,请在您的系统上创建一个文件“ABC”。
“ABC”文件包含:这个程序是关于 whitespaceChars()
输出 :
Word : This Word : progr Word : m Word : is Word : out Word : whitesp Word : eCh Word : rs