小编JF *_*ier的帖子

添加数百万个定点数

我已经在小数点后给出了数百万个精确4位数的数字.

它们必须以复杂的方式添加和减少(在优化问题中).之后(以及之间)我必须确定确切的值.

在C#中,我想到了三种不同的可能性:

  1. 使用双精度并定义舍入误差以进行比较.
  2. 使用小数类型
  3. 创建一个使用整数运算的类型

你会建议什么?

c# double decimal

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

将内部集合作为IEnumerable <T>返回的标准方法

说我有:

class foo
{
  private List<T> bar;
  public IEnumerable<T> GetBar();
}
Run Code Online (Sandbox Code Playgroud)

哪里GetBar()应该返回那个相同的List,而不暴露内部(即没有其他类应该能够从内部列表中删除元素,重新排序等)并避免过度复制.这样做的标准方法是什么?

c# ienumerable

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

从 java 执行密码查询 (Neo4j)

我想通过向 Neo4j 服务器发送 Cypher 查询来查询它,并以某种表的形式接收输出。

我读过人们使用RestCypherQueryEngine,但是 neo4j-contrib/java-rest-binding 在 github 上说“这个库不再维护”。

那么,从 java(通过 REST?)联系 Neo4j 服务器、向其发送带参数的 Cypher 查询、接收结果并将其解释为某种表的常用且未弃用的方法是什么?

java rest neo4j cypher

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

获取 jar 的所有导入类

对于给定的 jar,我想找出该 jar 使用的所有类(尽可能)。由于我有很多罐子,我想自动化这个过程。到目前为止我最好的想法是

  1. 反编译jar(我没有这方面的经验,但应该有命令行工具)。
  2. 查找导入并解析它们。

但我希望其他人以前做过类似的事情并给我建议。

java decompiling jar

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

使用包含多个共享代码的构造函数的final字段

我需要从字符串中设置一些最终字段(基本上,通过对它们应用一些正则表达式,无关紧要).不同的构造函数以不同的方式获取此String,因此构造函数看起来像这样

 public Foo(File file, Dog dog, ...)
 {
     String importantString;
     //do some stuff to get importantString
     setFinalFieldsFromString(importantString);
 }
Run Code Online (Sandbox Code Playgroud)

显然,这不起作用,因为您无法在构造函数外部设置最终字段.所以我看到两个不太令人满意的解决方案

  • 从字段中删除"最终"
  • 复制并粘贴setFinalFieldsFromString中的代码

有没有更好的方法?

备注:由于共享代码不在构造函数的开头,我不能从另一个调用一个构造函数.

java constructor

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

如果不存在这样的对象,在findXY方法中该怎么办?

假设我有一个Java方法

public X findX(...)
Run Code Online (Sandbox Code Playgroud)

它试图找到X满足某些条件的类型的对象(在参数中给出).通常这样的功能不能保证找到这样的对象.我可以想出不同的方法来解决这个问题:

  1. 可以编写一个public boolean existsX(...)具有相同签名的方法,该方法应首先调用.这可以避免任何类型的异常和空值处理,但可能会出现一些重复的逻辑.

  2. 可以只返回null(并在javadoc中解释).来电者必须处理它.

  3. 可以抛出一个检查过的异常(哪一个适合这个?).

你会建议什么?

java

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

将属性添加到 Maven 原型

我有一个 Maven 原型项目,想要进行一些进一步的配置。我试过:

  1. ${servicelocatorhost}$${servicelocatorport}放入我的.tomcatplugin文件中。
  2. 添加.tomcatplugin到原型元数据文件中的过滤文件。
  3. 添加

    <requiredProperties>
      <requiredProperty key="servicelocatorhost">
        <defaultValue>localhost</defaultValue>
      </requiredProperty>
      <requiredProperty key="servicelocatorport">
        <defaultValue>2809</defaultValue>
      </requiredProperty>
    </requiredProperties>
    
    Run Code Online (Sandbox Code Playgroud)

到原型元数据文件。当我构建这个时,我得到

Archetype IT 'basic' failed: Missing required properties in archetype.properties: servicelocatorhost, servicelocatorport
Run Code Online (Sandbox Code Playgroud)

到目前为止,我认为该archetype.properties文件仅用于create-from-project但不用于构建原型。我应该将此类文件中的属性和默认值信息加倍吗?

我究竟需要什么才能使这项工作成功?

java maven maven-archetype

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

通过Java从.class文件中获取ByteCode(依赖)信息

我想分析.class文件并获取有关哪个类使用哪个其他类的信息。

jdeps 是一个命令行工具,它允许您在控制台中显示一些信息,但我想避免调用外部工具并抓取命令行输出。

java bytecode java-8 jdeps

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

GitHub maven CI error Missing commit &lt;commit hash&gt;

I am trying to set up the standard maven CI pipeline (so just mvn package) on GitHub, but I always get the error "Error: Missing commit ", where is referencing the second last commit (so not the commit that this run is checking, but the commit before).

I already reset the whole build pipeline by deleting it and setting it up freshly again, but that didn't help.

The maven.yml is the standard maven.yml created by GitHub, but here it is: …

github maven github-actions

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

如何在java中将IntStream转换为List?

我想将随机数流转换为列表:

public static void main(String[] args) {
        System.out.println(
                new Random().ints(10, 0, 20).
                        collect(Collectors.toList()));
    }
Run Code Online (Sandbox Code Playgroud)

但这给出了一个例外

java: method collect in interface java.util.stream.IntStream cannot be applied to given types;
  required: java.util.function.Supplier<R>,java.util.function.ObjIntConsumer<R>,java.util.function.BiConsumer<R,R>
  found: java.util.stream.Collector<java.lang.Object,capture#1 of ?,java.util.List<java.lang.Object>>
  reason: cannot infer type-variable(s) R
    (actual and formal argument lists differ in length)
Run Code Online (Sandbox Code Playgroud)

那么如何在java中将流转换为列表?

java list java-stream

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