【java – 确保所有集合元素都为非null的现有实用程序方法】教程文章相关的互联网学习教程文章

java – 带有null Long的三元表达式中的NullPointerException【代码】

为什么以下代码行会产生NullPointerException?Long v = 1 == 2 ? Long.MAX_VALUE : (Long) null;我知道取消装箱正在执行null,但为什么呢? 注意Long v = (Long) null;不会产生异常.解决方法:所以看起来很明显,如果条件为真,你只需要装箱,如果条件为假则不应该装箱.但是,三元运算符表达式必须具有特定的静态类型.所以我们有很长很长的路要走. JLS声明结果将是原始的(同样 – 如果运算符是,比如说,甚至是=).因此三元运算符将强制取消...

java – 是否有一个JDK或Guava方法将null转换为空列表?【代码】

在JDK或Google Guava中是否有像这样的方法public static <T> Collection<T> safe(Collection<T> collection) {if (collection == null) {return new ArrayList<>(0);} else {return collection;} }例如,如果某些东西返回空列表,则很容易在增强的循环上崩溃for (String string : CollectionUtils.safe(foo.canReturnANullListOfStrings())) {// do something }不会崩溃. 我环顾四周但找不到任何这样的方法,我想知道我是否错过了它,或...

java – Spring Boot:@Value返回null【代码】

我想使用application.properties文件中的值,以便在另一个类的方法中传递它.问题是值返回NULL.可能是什么问题呢?提前致谢. application.propertiesfilesystem.directory=tempFileSystem.java@Value("${filesystem.directory}") private static String directory;解决方法:你不能在静态变量上使用@Value.您必须将其标记为非静态,或者在此处查看将值注入静态变量的方法: https://www.mkyong.com/spring/spring-inject-a-value-into-...

java – 为什么对象实例(null)上的toString()不会抛出NPE?【代码】

考虑下面一个:Object nothingToHold = null;System.out.println(nothingToHold); // Safely prints 'null'在这里,Sysout必须期待String.因此必须在实例上调用toString(). 那么为什么null.toString()工作得很棒? Sysout会照顾这个吗? 编辑:其实我用StringBuilder的append()看到了这个奇怪的东西.所以尝试了Sysout.两者的行为方式相同.那个方法也在照顾吗?解决方法:PrintWriter的println(Object)(当你编写System.out.println(...

java – 为路由中的可选查询参数赋予null默认值 – Play Framework【代码】

我正在尝试定义一个可选的查询参数,该参数将映射到Long,但在URL中不存在时将为null:GET /foo controller.Foo.index(id: Long ?= null)……我基本上想检查它是否传入:public static Result index(Long id) {if (id == null) {...}... }但是,我收到了编译错误:type mismatch; found : Null(null) required: Long Note that implicitconversions are not applicable because they are ambiguous: both methodLong2longNullConfli...

java – @OrderColumn,@ OneToMany&null索引列用于集合【代码】

我正在尝试创建保留订单的父子表. Hibernate文档中的示例7.8显示了如何执行此操作:@Entity public class Customer {@Id @GeneratedValue public Integer getId() { return id; }public void setId(Integer id) { this.id = id; }private Integer id;@OneToMany(mappedBy="customer")@OrderColumn(name="orders_index")public List<Order> getOrders() { return orders; }public void setOrders(List<Order> orders) { this.orders...

Null的Java注释,但既不是Empty也不是Blank【代码】

是否有任何java注释可以像下面的示例一样进行验证?String test; test = null; //valid test = ""; //invalid test = " "; //invalid test = "Some values"; //valid提前致谢解决方法:在javax.validation或Hibernate Validator中都没有这样的注释.有一个request to add one to Hibernate Validator,但它被关闭为“不会修复”,因为有可能相对容易地编写自己的.建议的解决方案是使用您自己的注释类型,如下所示:@ConstraintCompositi...

java – 在其他类中实现的调用接口方法的null指针异常【代码】

我试图调用接口OnSelectedListener的方法getFailureDialog().该方法在MainActivity.java中实现.但是当我打电话给这个方法时,我得到了空指针异常. 我知道它是因为OnSelectedListener仍然没有初始化,你在未初始化的对象上调用getFailureDialog().显然,接口方法永远不会被初始化.但是,如何从我的类Common.java中调用方法getFailureDialog()? 我只在下面放置相关的源代码 – 源代码: SharedFragment.javapublic class SharedFragmen...

获取异常:java.lang.IllegalArgumentException:无法添加到布局:约束必须是字符串(或null)【代码】

我正在实现浏览器类型的项目,我得到一个例外.import java.awt.BorderLayout; import java.awt.Dimension; import java.awt.GridBagConstraints; import java.awt.Insets; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.SwingUtilities; import chrriis.dj.nativeswing.swtimpl.NativeInterface; import chrriis.dj.nativeswing.swtimpl.components.JWebBrowser;public class WebPageDisplay ext...

Java ImageIO.read(getClass().getResource())返回null【代码】

这条线andImg = ImageIO.read(getClass().getResource("gate_and.png"));失败了Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: input == null!我正在使用Eclipse,在bin文件夹下的导航视图中有文件gate_and.png,表明该文件位于构建路径中. 在包浏览器视图中我有project/src/view/class - This is the class that has the code above.和project/images/gate_and.png我右键单击了项目文件夹>构建路径>...

java – 如何覆盖Jackson 2.0中的null序列化程序?【代码】

我正在使用Jackson进行JSON序列化,我想覆盖null序列化程序 – 具体来说,将null值序列化为JSON中的空字符串而不是字符串“null”. 我在如何设置空序列化器时发现的所有文档和示例都是指Jackson 1.x – 例如,http://wiki.fasterxml.com/JacksonHowToCustomSerializers底部的代码不再与Jackson 2.0编译,因为库中不再存在StdSerializerProvider.该网页描述了Jackson 2.0的模块接口,但模块接口没有明显的方法来覆盖空序列化器. 任何人都...

java – 使用具有null布局的JPanel

所以我有一个名为CalendarPanel的类,它扩展了JPanel.它使用null布局.我如何使用CalendarPanel作为常规组件?当我把它放在另一个JPanel然后将其添加到窗口时,它就会消失.它只有在我直接添加到窗口时才可见. 编辑:是的,我意识到使用带有空布局的JPanel是不好的做法. CalendarPanel实际上是别人的代码,我试图将它用于我的目的,而不必重构它.解决方法:It is only visible when I add it directly to a window.这是因为窗口默认使用Bor...

java – Objects :: nonNull和x – > x!= null之间有什么区别吗?【代码】

考虑以下课程:import java.util.Objects; import java.util.function.Predicate;public class LambdaVsMethodRef {public static void main(String[] args) {Predicate<Object> a = Objects::nonNull;Predicate<Object> b = x -> x != null;} }第一个谓词是从方法引用创建的,另一个是lambda表达式.这些谓词具有相同的行为(nonNull的主体只是返回obj!= null;). lambda短两个字符(可能允许流管道适合一行). 除了代码风格,Objects :...

返回默认值而不是null的Java Map实现

我有一个Map< String,List< String>>在我的代码中,如果map的#get()方法返回一个空列表而不是null,我会避免使用潜在的空指针. java API中有这样的东西吗?我应该扩展HashMap吗?解决方法:@ Jon的回答是直接做你要求的好方法. 但令我感到震惊的是,您可能尝试实施的是“多图”;即从键到值集合的映射.如果是这种情况,那么您还应该查看Guava或Apache commons集合中的multimap类. 看着: > com.google.common.collect.Multimap接口及其实...

java – null时获取空字符串【代码】

我想获取我的字段的字符串值(它们可以是长字符串或任何对象的类型), 如果一个字段为null,那么它应该返回空字符串,我用guava做了这个;nullToEmpty(String.valueOf(gearBox)) nullToEmpty(String.valueOf(id)) ...但是如果变速箱为空,则返回null!不是空字符串,因为valueOf methdod返回字符串“null”,这会导致错误. 有任何想法吗? EDIt:有100个字段我寻找易于实现的东西解决方法:您可以使用Objects.toString()(Java 7中的标准):O...