2017-02-28 233 views
-1

我有一个方法long类型的表达盒装入龙

public double getNumberOfBooks(final int count, final double Price, 
     final Long Quantity, final double totalValue) 

现在下面

public void testgetNumberOfBooks() 
{ 
    Long obj = Long.valueOf(5l); 
    long val1 = obj.longValue(); 

    //long val = 100L; 

    final double percentageDiscountComp = 
     testClass.getNumberOfBooks(10, 900.00d, val1, 1000.00d); 

} 

但无法通过提到我打电话从其他Java类此方法参数Long中的值。它给出的错误为long类型的表达式被装入Long中。

+1

我没有在我的IDE中得到这个错误,也许它只是一个警告消息。也许最好在论据中传递obj,为什么在所有的unbox中呢? – Sikorski

+0

这不是一个错误。这是一个警告,你可以忽略它/关闭它。但是,它有一点意义。也就是说,你似乎已经声明一个参数为“长”,可能应该是“长”。除非有充分的理由使用Long,否则效率不高。 –

回答

0

intellij-idea没有错误。这可能是我的Eclipse设置。在这个问题中发现类似的错误消息:The expression of type x is boxed into X?

+0

Eclipse中没有错误或警告(火星2) –

+0

所以也许取决于不同Eclipse版本的默认设置。 –