Questions tagged «java»

Java是一种流行的高级编程语言。如果您在使用或理解语言本身时遇到问题,请使用此标签。这个标签很少单独使用,最常与[spring],[spring-boot],[jakarta-ee],[android],[javafx],[gradle]和[maven]结合使用。

20
Java中“ this”的含义是什么?
通常,我this仅在构造函数中使用。 我了解它用于标识参数变量(通过使用this.something),如果它与全局变量具有相同的名称。 但是,我不知道thisJava 的真正含义是什么,如果this不使用点(.),将会发生什么。
140 java 

15
Java:如何确定流的正确字符集编码
参考以下线程: Java App:无法正确读取iso-8859-1编码的文件 以编程方式确定输入流/文件的正确字符集编码的最佳方法是什么? 我尝试使用以下方法: File in = new File(args[0]); InputStreamReader r = new InputStreamReader(new FileInputStream(in)); System.out.println(r.getEncoding()); 但是在我知道要用ISO8859_1编码的文件上,上面的代码会产生ASCII,这是不正确的,并且不允许我将文件的内容正确地呈现回控制台。

2
BigDecimal setScale和舍入
这两个电话有什么区别?(有没有?) // 1. new BigDecimal("3.53456").round(new MathContext(4, RoundingMode.HALF_UP)); // 2. new BigDecimal("3.53456").setScale(4, RoundingMode.HALF_UP);
140 java  bigdecimal 

4
Java 8:Streams与Collections的性能
我是Java 8的新手。我仍然不了解API的详细信息,但是我做了一个小型的非正式基准测试,以比较新Streams API与旧版Collections的性能。 该测试包括过滤的列表Integer,并针对每个偶数计算平方根并将其存储在结果List中Double。 这是代码: public static void main(String[] args) { //Calculating square root of even numbers from 1 to N int min = 1; int max = 1000000; List<Integer> sourceList = new ArrayList<>(); for (int i = min; i < max; i++) { sourceList.add(i); } List<Double> result = new …

7
右键单击并选择“新建”时,IntelliJ不显示“类”
我们正在IntelliJ中创建一个新项目,并且一定有问题,因为当我们右键单击目录时,选择“ 新建”,然后获得上下文菜单,则不会显示基于Java的选项。当前获得诸如文件,一些HTML选项,XML选项之类的东西。 到目前为止,我们已经假设这是在Project / Module配置中尚未正确配置的东西。我们正在讨论的新模块是多模块项目的一部分。我们使用Maven网络原型创建了它。 对配置项目性质有帮助吗? 编辑:答案是基本的: “那一刻,当您意识到某些事情因为您没有单击“应用”而无法正常工作... :)当我们发现这一点时,我们为自己开怀大笑”

16
是否有通用的Java实用程序将列表分为几批?
我为自己编写了一个实用程序,用于将列表分成给定大小的批次。我只是想知道是否已经有针对此的apache commons util。 public static <T> List<List<T>> getBatches(List<T> collection,int batchSize){ int i = 0; List<List<T>> batches = new ArrayList<List<T>>(); while(i<collection.size()){ int nextInc = Math.min(collection.size()-i,batchSize); List<T> batch = collection.subList(i,i+nextInc); batches.add(batch); i = i + nextInc; } return batches; } 请让我知道是否已经有相同的现有实用程序。
140 java  collections 

9
如何更有效地使用@Nullable和@Nonnull注释?
我可以看到@Nullable和@Nonnull注释可能有助于防止NullPointerExceptions,但它们不会传播太远。 这些注释的有效性在一个间接级别之后会完全下降,因此,如果仅添加一些注释,它们的传播就不会太远。 由于这些注释的执行不正确,因此存在以下危险:假定标有的值@Nonnull不为空,因此不执行空值检查。 以下代码使标记@Nonnull为的参数null不会引起任何投诉。它NullPointerException在运行时抛出一个。 public class Clazz { public static void main(String[] args){ Clazz clazz = new Clazz(); // this line raises a complaint with the IDE (IntelliJ 11) clazz.directPathToA(null); // this line does not clazz.indirectPathToA(null); } public void indirectPathToA(Integer y){ directPathToA(y); } public void directPathToA(@Nonnull Integer x){ x.toString(); // …

21
Java中for循环增强的最后一次迭代
有没有一种方法可以确定循环是否在最后一次迭代。我的代码如下所示: int[] array = {1, 2, 3...}; StringBuilder builder = new StringBuilder(); for(int i : array) { builder.append("" + i); if(!lastiteration) builder.append(","); } 现在,我不想在最后一次迭代中添加逗号。现在有一种方法可以确定是最后一次迭代,还是我陷入了for循环还是使用外部计数器来跟踪。

5
Mockito:InvalidUseOfMatchersException
我有一个执行DNS检查的命令行工具。如果DNS检查成功,则该命令将继续执行其他任务。我正在尝试使用Mockito编写单元测试。这是我的代码: public class Command() { // .... void runCommand() { // .. dnsCheck(hostname, new InetAddressFactory()); // .. // do other stuff after dnsCheck } void dnsCheck(String hostname, InetAddressFactory factory) { // calls to verify hostname } } 我正在使用InetAddressFactory模拟类的静态实现InetAddress。这是工厂代码: public class InetAddressFactory { public InetAddress getByName(String host) throws UnknownHostException { return …

7
在Java 8中,如何使用lambda将Map <K,V>转换为另一个Map <K,V>?
我刚刚开始研究Java 8,并尝试了lambda,我认为我想尝试重写最近写的一件非常简单的东西。我需要将字符串映射到列映射转换为另一个字符串映射到列映射,其中新映射中的列是第一个映射中列的防御性副本。列具有复制构造函数。到目前为止,我最接近的是: Map&lt;String, Column&gt; newColumnMap= new HashMap&lt;&gt;(); originalColumnMap.entrySet().stream().forEach(x -&gt; newColumnMap.put(x.getKey(), new Column(x.getValue()))); 但我敢肯定,必须有更好的方法来完成这项工作,对于您的建议我将不胜感激。
140 java  map  lambda  java-8  java-stream 


30
Hibernate-批更新从更新返回意外行数:0实际行数:0预期值:1
我收到以下休眠错误。我能够确定导致问题的功能。不幸的是,函数中有多个数据库调用。由于休眠在事务结束时刷新会话,因此我找不到导致问题的行。下面提到的休眠错误看起来像是一般错误。甚至都没有提到哪个Bean导致了问题。有人熟悉这个休眠错误吗? org.hibernate.StaleStateException: Batch update returned unexpected row count from update: 0 actual row count: 0 expected: 1 at org.hibernate.jdbc.BatchingBatcher.checkRowCount(BatchingBatcher.java:93) at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:79) at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58) at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:142) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297) at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:985) at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:333) at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106) at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:584) at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransacti onManager.java:500) at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManag er.java:473) at org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(Transaction AspectSupport.java:267) …
140 java  hibernate 

12
Java:清除控制台
谁能告诉我Java用什么代码实现清晰屏幕?例如在C ++中 system("CLS"); Java使用什么代码实现清晰屏幕? 谢谢!
140 java  console  clear 


1
Java使用Mockito验证void方法调用n次
我试图验证在DAO中是否正在调用(void)方法-我正在使用提交点,该发送点发送直到该点的结果列表,重置列表并继续。假设我在列表中有4件事,并且我的提交点为1,我希望“发送”方法被调用4次。我可以通过编写来验证该方法是否被调用过一次 Mockito.verify(mock).send() 它通过了..但是我想验证它被调用的次数。我认为 Mockito.verify(mock.send(), times(4)) 就足够了,但是它说参数对于验证不正确。 顺便说一句,如果我更改 Mockito.verify(mock).send()为 Mockito.verify(mock.send())或 Mockito.verify((mock).send())得到相同的错误。有这个想法吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.