小编Eug*_*rin的帖子

如何在Java中对BigDecimal进行分数处理?

在我的小项目中,我需要做一些像Math.pow(7777.66,5555.44)这样的东西只有非常大的数字.我遇到了一些解决方案:

  • 使用双倍 - 但数字太大
  • 使用BigDecimal.pow但不支持小数
  • 使用X ^(A + B)= X ^ A*X ^ B公式(B是第二个数字的余数),但是再次不支持大X或大A,因为我仍然转换为double
  • 使用某种泰勒级数算法或类似的东西 - 我不是很擅长数学,所以如果我找不到任何解决方案(一些库或(A + B)的公式^(C),这个是我的最后一个选项+ d)).

有人知道图书馆或简单的解决方案吗?我想很多人都处理同样的问题......

ps我发现了一些名为ApFloat的图书馆声称要做大约,但我得到的结果是如此近似,甚至8 ^ 2给了我60 ...

java formula bigdecimal pow

24
推荐指数
1
解决办法
2万
查看次数

Eclipse自动完成问题

刚刚安装了Eclipse Helios(Win7 64),我遇到了一个奇怪的问题.我键入syso-Ctrl-Space,它应该完成到System.out.println(""),但它不起作用!我在网上搜索了大约一个小时,我将Preferences> Java> Editor> Content Assist设置为默认值,没有.其他一切似乎都有效.想法?
要明确:快捷方式有效,它完成除了目前为止看到的"syso"之外的所有内容,在syso(也尝试过sysout)上它显示"No Default Proposals".我在内容辅助中找不到这种快捷方式,但无论如何我都将它们设置为默认值.

java eclipse autocomplete shortcut

14
推荐指数
2
解决办法
4万
查看次数

编排引擎和框架?

我正在寻找一个编排框架/引擎/工具包来替换/升级现有软件,主要是因为可扩展性限制。我所说的编排是指通用任务和工作流的异步和分布式执行。

更具体地说,要求几乎是这些:

  • 通用任务的包装和执行,如果依赖于语言,则在 Java 中
  • 用于任务和工作流按需触发的 API
  • 调度也会很好
  • 支持分布式架构和可扩展性(主要用于大量小任务)
  • 持久性和弹性
  • 高级工作流配置功能(执行此操作,然后并行执行3 个任务,然后执行此操作,具有优先级、依赖项...)
  • 监控和管理 UI(或至少 API)

现有系统是一个老式的单体服务(在 Java 中),它具有大部分功能,包括应尽可能保持不变的执行逻辑本身。

有没有人有类似问题的经验?在我看来,它应该很常见,如果我必须完全自己实现它会很奇怪。我在这里发现了一些问题(比如这个这个)讨论编排和编排系统的理论,但不是实现它的工具的真实例子。此外,我认为我们并不是在谈论微服务 - 任务并不长且繁重,它们只是很多,在后台运行,执行多种类型的短期作业。我不会为每种工作类型创建服务。

此时我也没有在寻找云和容器服务——据我所知,部署是一个不同的问题。

我得到的最接近的是Netflix Conductor 引擎,它通过运行一个编排服务器来满足大多数需求,该服务器管理在 servlet(或任何语言的任何 Web 服务 - 加分项)中实现的任务。然而,它似乎主要是为了在工作流中安排繁重的任务而不是运行大量的小任务,这让我想知道在 servlet 中调用许多小任务的开销是多少。

有没有人对我可以使用的导体或其他工具有经验或任何意见?或者甚至是我解决问题的整个方法?

编辑:我意识到这是一种“需要的研究建议”,所以让我们简单地将其分为 3 个问题:

  1. 我是否应该为上述要求寻找编排解决方案?
  2. 有没有人有使用Netflix Conductor 的经验?有任何反馈吗?
  3. 它有好的竞争对手吗?

java workflow frameworks orchestration

12
推荐指数
2
解决办法
9830
查看次数

Java主要参数被确定为主类

我在使用参数作为来自另一个Java管理器进程的命令运行Java进程时遇到问题.假设我有一个主类Main,我想传递0作为参数(对于javaw.exe,它只是其中一个参数).为了说明,如果我在控制台中运行这样的东西,它可以工作:

javaw.exe -X... -D... -cp ... Main 0
Run Code Online (Sandbox Code Playgroud)

这将使用参数0运行Main.现在,要从我的管理器应用程序运行它,我使用以下行:

Process p = Runtime.getRuntime().exec(new string[] {
    "cmd.exe", "/c", "javaw.exe", "-X... -D... -cp ... Main", "0"});
Run Code Online (Sandbox Code Playgroud)

我在错误中得到以下输出:

Error: Could not find or load main class 0
Run Code Online (Sandbox Code Playgroud)

换句话说,JVM将0标识为主类.
不建议使用不同的exec重载(它是通用基础结构).

java program-entry-point arguments cmd

1
推荐指数
1
解决办法
117
查看次数