我有一个stringtoList ArrayList,它需要从StreamTokenizer返回令牌,但是s.sval在运行时未编译,有人可以帮助我解决这个问题:

private List<Token> stringToList(final String string) {
  // TODO your job
  // follow Main.main but put the tokens into a suitable list

  ArrayList<Token> al = new ArrayList<Token>();

  String word = "";

  String in = string;
  StreamTokenizer s = new StreamTokenizer(new StringReader(in));

  int token;
  while ((token = s.nextToken()) != StreamTokenizer.TT_EOF) {
   if (token == StreamTokenizer.TT_WORD) {
    DefaultToken t = (s.sval, s.lineno()); //problem here, not reading the sval from the StreamTokenizer!!!
    al.add(t);
  }
  return al;
  }
 }


非常感激任何的帮助

最佳答案

以下是无效的Java语法:

DefaultToken t = (s.sval, s.lineno());


不知道DefaultToken类是什么样子,这对我来说很难帮上忙,但是也许您的意思是这样的?

DefaultToken t = new DefaultToken(s.sval, s.lineno());

10-08 08:42