文字列のリストと比較できる最初のNetlogo拡張を書きたいと思っています。私はエクステンションを書くのが初めてで、Javaのプログラミングについて多くのことを知らないので、私は助けを望んでいます。Netlogo Extension:文字列のリストの比較
私のコードは、これまでのところです。しかし
package org.nlogo.extensions.string;
import org.nlogo.api.Argument;
import org.nlogo.api.Context;
import org.nlogo.api.DefaultReporter;
import org.nlogo.api.ExtensionException;
import org.nlogo.api.LogoException;
import org.nlogo.api.Syntax;
import org.nlogo.api.LogoListBuilder;
import org.nlogo.api.LogoList;
public class Matching2 extends DefaultReporter{
@Override
public Syntax getSyntax(){
return Syntax.reporterSyntax(new int[] { Syntax.ListType(), Syntax.ListType() },
Syntax.ListType());
}
@Override
public Object report(Argument args[], Context context)
throws ExtensionException, LogoException
{
LogoList input1 = args[0].getList() ;
LogoList input2 = args[1].getList();
return input1.retainAll(input2);
}
}
、私はモデルを実行しようとすると、私はエラーを取得...
Thxを事前に。
編集:
error (UnsupportedOperationException)
while observer running SHOW
called by procedure CHECK-POTENTIAL-WORDS
called by procedure GO
called by Button 'go one time step'
NetLogo is unable to supply you with more details about this error.Please report the problem at https://github.com/NetLogo/NetLogo/issues, or to [email protected], and paste the contents of this window into your report.
java.lang.UnsupportedOperationException at org.nlogo.api.LogoList.org$nlogo$api$LogoList$$unsupported(LogoList.scala:67)
at org.nlogo.api.LogoList$Iterator.remove(LogoList.scala:64)
at org.nlogo.api.LogoList$Iterator.remove(LogoList.scala:54)
at java.util.AbstractCollection.retainAll(AbstractCollection.java:410)
at org.nlogo.extensions.string.Matching2.report(Matching2.java:28)
at org.nlogo.prim._externreport.report(_externreport.java:50)
at org.nlogo.prim.etc._show.perform(_show.scala:13)
at org.nlogo.nvm.Context.stepConcurrent(Context.java:91)
at org.nlogo.nvm.ConcurrentJob.step(ConcurrentJob.java:82)
at org.nlogo.job.JobThread.org$nlogo$job$JobThread$$runPrimaryJobs(JobThread.scala:143)
at org.nlogo.job.JobThread$$anonfun$run$1.apply$mcV$sp(JobThread.scala:78)
at org.nlogo.job.JobThread$$anonfun$run$1.apply(JobThread.scala:76)
at org.nlogo.job.JobThread$$anonfun$run$1.apply(JobThread.scala:76)
at scala.util.control.Exception$Catch.apply(Exception.scala:88)
at org.nlogo.util.Exceptions$.handling(Exceptions.scala:41)
at org.nlogo.job.JobThread.run(JobThread.scala:75)
WHATエラーが出るのですか? –
残りのリストが空であることを示すエラーである可能性がありますか? –