- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试在 Java 中使用一些线性编程工具。我决定探索 SCPSolver,因为它附带了文档。
所以我尝试运行 SCPSolver 主页中所示的示例:the low lever interface example
public class SCPSolverDemo {
public static void main(String ag[]){
LinearProgram lp = new LinearProgram(new double[]{5.0,10.0});
lp.addConstraint(new LinearBiggerThanEqualsConstraint(new double[]{3.0,1.0}, 8.0, "c1"));
lp.addConstraint(new LinearBiggerThanEqualsConstraint(new double[]{0.0,4.0}, 4.0, "c2"));
lp.addConstraint(new LinearSmallerThanEqualsConstraint(new double[]{2.0,0.0}, 2.0, "c3"));
lp.setMinProblem(true);
LinearProgramSolver solver = SolverFactory.newDefault();
double[] sol = solver.solve(lp);
System.out.println(Arrays.toString(sol)); //line 23
}
}
当我运行它时,我收到一条错误消息
Exception in thread "main" java.lang.NullPointerException
at drafts.SCPSolverDemo.main(SCPSolverDemo.java:23)
我意识到 SolverFactory.newDefault();
返回 null。文档说
搜索 LinearProgramSolver 服务的服务提供者并返回找到的第一个实例。如果未找到服务,它将堆栈跟踪打印到 stderr 并返回 null。首次调用此方法时,它会初始化 ServiceLoader,该 ServiceLoader 从类路径中查找可用服务。后续调用将使用第一次初始化的结果。因此,如果在第一次调用时没有可用的服务,则程序运行的其余部分将没有可用的服务。 future 的实现可能会忽略这个问题。
但我不知道如何解决这个问题。在这一点上,我希望得到您的帮助。我从现有的例子中无法理解太多,我不知道该怎么做。
有人可以给我一个可运行的示例,以便了解发生了什么吗?预先感谢您
最佳答案
关于java - SCPSolver 与 Java nullPointerException。一个可运行的例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28394041/
我尝试将 scpsolver 和 gplk jar 文件用于类项目,但给出的示例给了我一个空指针错误。 LinearProgram lp = new LinearProgram(new double[
我正在尝试在 Java 中使用一些线性编程工具。我决定探索 SCPSolver,因为它附带了文档。 所以我尝试运行 SCPSolver 主页中所示的示例:the low lever interface
我是一名优秀的程序员,十分优秀!