Java中StringTokenizer 类

来源:互联网 发布:织梦cms 手机模板制作 编辑:程序博客网 时间:2024/04/27 21:17

StringTokenizer位于java.util包中,该类可以将字符串分解为组成它的符号词。

构造函数:

StringTokenizer(String str)  以字符串str为参数以(空格,换行符,制表符,回车符)结尾,建立一个StringTokenizer对象。

StringTokenizer(String str,String delim)是以字符串str为参数,以delim为定界字符建立一个StringTokenizer对象。

StringTokenizer(String str,String delim,boolean returnDelims) 以字符str为参数,以delim为定界字符串,以returnDelims参数确定该定界是否也作为语言符号返回建立一个StringTokenizer对象。

StringTokenizer 常用方法

int countTokens() 返回要进行语言符号化的字符串中语言符号的数目。

Boolean hasMoreTokens() 判断是字符串中是否还有更多的语言符号。

String nextToken() 获取StringTokenizer类中的下一个语言符号。

样例:在窗口JTextField中输入要进行语言符号化的语句,按回车键后,结果显示在窗口的JTextArea中。

import java.awt.*;import java.awt.event.*;import java.util.StringTokenizer;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;public class TokenizerTest extends JFrame {private JLabel promptLabel;private JTextField inputField;private JTextArea outputArea;public TokenizerTest(){super("测试StringTokenizer类");/**       初始化一个容器,用来在容器上添加一些控件 */Container container =getContentPane();/*一般的用法:setLayout(new BorderLayout())//或FlowLayout...随后调用add(...)即可。                                  常用的有5种:FlowLayout、BorderLayout、GridLayout、CardLayout、GridBagLayout。一般来说都要放在构造函数或初始化函数中,设置后再加入控件。                                 下面是几个使用setLayout()方法实现FlowLayout的例子:          setLayout(new FlowLayout(FlowLayout.RIGHT,20,40));         setLayout(new FlowLayout(FlowLayout.LEFT));         setLayout(new FlowLayout());        */container.setLayout(new FlowLayout());promptLabel =new JLabel("输入一个句子,然后按回车键");container.add(promptLabel);inputField=new JTextField(20);inputField.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent event){StringTokenizer tokens=new StringTokenizer(event.getActionCommand());outputArea.setText("Number of elements:"+ tokens.countTokens()+"\nThe tokens are:\n");while(tokens.hasMoreElements()){outputArea.append(tokens.nextToken()+'\n');}}});container.add(inputField);outputArea=new JTextArea(10,20);outputArea.setEditable(false);           //文本输出框不能进行编辑container.add(new JScrollPane(outputArea));setSize(275,240);setVisible(true);}public static void main(String[] args) {          TokenizerTest opplication= new TokenizerTest();          opplication.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}



0 0
原创粉丝点击