Java 如何在方法和类之间传递ArrayList?
我有一个返回arrayList标记的方法:Java 如何在方法和类之间传递ArrayList?,java,arrays,string,arraylist,opennlp,Java,Arrays,String,Arraylist,Opennlp,我有一个返回arrayList标记的方法: public static String[] Tokenize(String input) throws InvalidFormatException, IOException { InputStream is = new FileInputStream("en-token.bin"); TokenizerModel model = new TokenizerModel(is); Tokenizer tokeniz
public static String[] Tokenize(String input) throws InvalidFormatException, IOException {
InputStream is = new FileInputStream("en-token.bin");
TokenizerModel model = new TokenizerModel(is);
Tokenizer tokenizer = new TokenizerME(model);
String tokens[] = tokenizer.tokenize(input);
for (String a : tokens)
System.out.println(a);
is.close();
return tokens;
}
我希望这些令牌用于另一种方法:
public static void findName(String[] input) throws IOException {
InputStream is = new FileInputStream("en-ner-person.bin");
TokenNameFinderModel model = new TokenNameFinderModel(is);
is.close();
NameFinderME nameFinder = new NameFinderME(model);
Span nameSpans[] = nameFinder.find(input);
for(Span s: nameSpans)
System.out.println(s.toString());
}
还有,我如何在另一个类中使用这个tokens arrayList,比如
public class Main{
public static void main( String[] args) throws Exception
{
Anotherclass.Tokenize(input);
Anotherclass.findName(tokens);
}
}
我搞不懂!请帮帮我
非常感谢 就用这个:
Anotherclass.findName(Anotherclass.Tokenize(input));
您创建了静态方法,以便可以按类名调用这些方法,如
String[] SAMPLEARRAY = YOURCLASSNAME.Tokenize(String_ARRAY);
您必须将第一种方法的结果重新用于第二种方法
public class Main{
public static void main( String[] args) throws Exception
{
String[] tokens = Anotherclass.Tokenize(input);
Anotherclass.findName(tokens);
}
}
您仍然需要找出
输入
变量来自何处。调用Tokenize()并使用它。您在何处声明了ArrayList?您的方法不会返回ArrayList
对象,而是返回一个字符串数组;他们是不同的。只需为方法声明一个新的输入参数String[]tokens
,并将其用于代码。^^此处:String tokens[]=tokenizer.tokenize(输入);但它没有给出findName方法的任何输出。这是为什么?有没有一种方法可以在findName方法本身中使用令牌[]?您可以将findName的返回类型从void更改为Span数组,即Span[],然后您可以使用该数组,并在main方法中创建一个for循环来执行您想对其执行的任何操作。它不会给出findName方法的任何输出。为什么?有没有一种方法可以在findName方法本身中使用令牌[]?