小编Dun*_*nes的帖子

Apache Commons ObjectUtils等于方法测试的等级是什么?

我一直都知道Java中有两种类型的相等,

  • value equality:使用该.equals()方法测试两个对象是否在非null对象引用上实现等价关系.
  • 引用相等:使用==运算符来测试两个基本类型或内存位置是否相等.

以下几页更详细地描述了这些语言基础知识.

这两个链接没有明确指定的是,如果比较两个null对象引用的值相等,应该会发生什么.隐含的假设是NullPointerException应该抛出a,但这不是ObjectUtils.equals()方法所做的,这可能被认为是最佳实践效用方法.

令我担心的是,Apache Commons似乎已经在后门有效地引入了第三种平等的Java,并且已经令人困惑的事态可能会变得更加复杂.我称之为平等的第三个衡量标准,因为它试图测试值的相等性,当它失败时,它又回到测试参考相等性.Apache Commons相等测试与值相等和引用相等有许多相似之处,但也有明显的不同.

我是否有权利关注并希望避免使用ObjectUtils.equals()尽可能的地方?

有没有争论要求ObjectUtils.equals()提供其他两种平等衡量标准的有用联合?

选择答案

似乎没有就这个问题达成共识意见,但我决定将Bozho标记为正确,因为他最好将我的注意力吸引到我现在认为是无效安全等于检查的最大问题.我们都应该编写快速失败的代码,解决为什么要比较两个空对象的价值平等的根本原因而不是试图在地毯下扫描问题.

java equality equals apache-commons apache-commons-lang

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

在Visual Studio 2010 C#项目中设置调试/运行环境变量?

我在Visual Studio 2010中有一个C#项目,我希望使用特定的环境变量来运行/调试我的应用程序.

这让我觉得这可能存在于某个地方,但尽管进行了大量的搜索,但我找不到它.这个问题涉及2008年及以下,并没有包含有助于我的答案.这个问题涉及构建过程,而不是调试/运行的行为.

我很感激解决方法是使用环境变量启动我的IDE,但我宁愿从IDE控制它.这可能吗?

c# visual-studio-2010 visual-studio

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

使用流API查找列表中项目的所有索引

我正在尝试使用Java 8流和lambda表达式进行顺序搜索.这是我的代码

List<Integer> list = Arrays.asList(10, 6, 16, 46, 5, 16, 7);
int search = 16;
list.stream().filter(p -> p == search).forEachOrdered(e -> System.out.println(list.indexOf(e)));
Run Code Online (Sandbox Code Playgroud)
Output: 2
        2
Run Code Online (Sandbox Code Playgroud)

我知道list.indexOf(e)总是打印第一次出现的索引.如何打印所有索引?

java lambda list java-8

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

HTTP PUT请求可以将application/x-www-form-urlencoded作为Content-Type吗?

如果我需要在HTTP PUT请求中发送表单数据,它是否有效?

如果你能指出我的规格,那就太棒了.

[更新]

我已经完成了HTTP 1.1规范.但我没有发现PUT请求是否可以有Form数据.

我正在使用Java来创建和访问RESTful webservices.POST支持application/x-www-form-urlencoded作为Content-Type.

根据规范,我了解POST用于创建新资源(由请求URI标识的资源的子资源),PUT用于创建或更新资源.

但我怀疑PUT方法是否也可以有表格数据呢?我试图根据规格找出它是否合适.我在HTTP 1.1规范中找不到任何相关内容.

谢谢,保罗

rest specifications content-type http put

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

使用或不使用断言签名对SAML响应进行签名?

在签署SAML响应时,还应该签名断言:

A)生成没有断言签名的响应签名.然后在生成两个签名后注入Assertion签名.

B)生成断言签名并在生成响应签名时包含它.

C)其他的东西.?

〜提前致谢!

xml sign response signature saml

15
推荐指数
3
解决办法
2万
查看次数

方法重载不使用不同的参数

为什么这不允许和被视为相同的签名?

public Object myMethod(Map<String, String[]> values) {
   return this;
}

public Object myMethod(Map<String, String> values) {
   return this;
}
Run Code Online (Sandbox Code Playgroud)

java generics overloading

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

如何在Java 8中对对象列表进行分页?

给定一个java.util.Listn元素和所需的页面大小m,我想将它转换为包含地图n/m+n%m的元素.每个地图元素都应包含m元素.

这是一个整数的例子:

    List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

    // What is the equivalent Java 8 code to create the map below from my list?

    Map<Integer, List<Integer>> map = new HashMap<>();
    map.put(0, Arrays.asList(1,2,3));
    map.put(1, Arrays.asList(4,5,6));
    map.put(2, Arrays.asList(7,8,9));
    map.put(3, Arrays.asList(10));
Run Code Online (Sandbox Code Playgroud)

这是可能的,使用Java 8?

java list java-8 partition

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

如何在Flutter构造函数参数上使用@required注释?

当我使用@requiredIntelliJ 注释构造函数参数时显示错误:

注释必须是const变量引用或const构造函数调用

任何人都可以建议我做错了什么?

class StatusBar extends StatelessWidget {
  final String text;

  const StatusBar({Key key, @required this.text})
      : assert(text != null),
        super(key: key);

  @override
  Widget build(BuildContext context) {
    //...
  }
}
Run Code Online (Sandbox Code Playgroud)

annotations widget flutter

15
推荐指数
3
解决办法
9436
查看次数

如何分享一个用 Dart 编写的闭源 Flutter 库?

我花了几个月和几天的时间在 dart [flutter app] 中编写一个库,并希望将我的努力货币化。我如何将这些 dart 库共享为封闭源代码,以便没有人可以看到我的源代码?

有没有办法隐藏我的源代码?

dart flutter

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

如何在JTable上执行不区分大小写的过滤器?

我正在制作一个带有文本字段的表格,您可以在其中输入单词来过滤表格.它有效,但我想要做的是能够用输入的单词过滤它,但忽略单词的情况.有没有办法在不创建自定义的情况下完成此操作RowFilter

您可以运行此SCCEE以查看我正在谈论的内容.我想能够输入usa并且它将过滤USA.

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.RowFilter;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;

public class TestTableSortFilter extends JApplet {

    private String[] columnNames
            = {"Country", "Capital", "Population in Millions", "Democracy"};

    private Object[][] data = {
        {"USA", "Washington DC", 280, true},
        {"Canada", "Ottawa", 32, true},
        {"United Kingdom", "London", 60, true},
        {"Germany", "Berlin", 83, true},
        {"France", "Paris", 60, true},
        {"Norway", "Oslo", 4.5, …
Run Code Online (Sandbox Code Playgroud)

java swing jtable rowfilter

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