double或float数据类型在循环中没有正确加载?

在循环中,我添加0.10,直到达到所需的#,并获得索引。 这是我的代码: private static int getIndexOfUnits(float units) { int index = -1; float addup = 0.10f; for(float i = 1.00f; i < units; i=(float)i+addup) { index++; System.out.println("I = " + i + " Index = " + index); } return index; } 如果通过的单位是5.7,我看到的输出是: I = 1.0 Index = 0 I = 1.1 Index = 1 […]

使用用户界面(Swing)在Java上启动ServerSocket冻结

美好的一天, 我有一个无限循环的ServerSocket,工作正常…问题是当我尝试用一​​个按钮启动ServerSocket。 我的用户界面“Freeze”不动,什么,但是服务器很好,这里我有一个ScreenShot : http://sofzh.miximages.com/java/15d331166dd3f651fc7bda4e3670be4d.png 当我按下按钮“Iniciar”意味着启动服务器,用户界面冻结(ServerSocket无限循环)。 我无法更改我的代码,因为它的工作正常。 public static void iniciarServer() { try { appendString(“\nServidor iniciado.”); System.out.println(“asdasd”); } catch (BadLocationException e1) { e1.printStackTrace(); } try { ss = new ServerSocket(1234, 3); while (true) { System.out.println(“Esperando conexiones…”); appendString(“\nEsperando conexiones…”); Socket s = ss.accept(); System.out.println(“Conexión entrante: ” + s.getRemoteSocketAddress()); appendString(“\nConexión entrante: ” + s.getRemoteSocketAddress()); conexiones++; //System.out.println(“Debug: conexiones […]

Linux / Unix环境中的JfreeChart错误

我在Linux环境中收到此错误,同时在Web浏览器上显示3D饼图。 它在windows环境中完美运行。 java.lang.NoClassDefFoundError: 无法初始化类org.jfree.chart.JFreeChart 在org.jfree.chart.ChartFactory.createPieChart3D(ChartFactory.java:763) 我已经设置了系统属性System.setProperty(“java.awt.headless”,“true”); 在我的java代码中。 在检查属性时,它已成功设置为true。 但我仍然得到同样的错误。

PDFBox Pdf到图像丢失QR码“ColorSpace Pattern不提供非抚摸颜色”

类似于这个SO PDFBox – PDF到图像丢失条形码 有问题的PDF: https : //drive.google.com/file/d/0B13zTPQR9uxscXRMWjhsZ0doa00/view?usp=sharing 有最小的文本和中等大小的QR码。 我尝试了许多不同的解决方案,使用PDFBox / ImageIO将此PDF页面转换为图像,但到目前为止,结果中始终缺少QR码。 当我使用PDFBox的PDFImageWriter时,我得到这个日志: ColorSpace Pattern doesn’t provide a non-stroking color, using white instead! 我认为这与二维码有关。 这是预期的行为吗? 其他人可以确认PDFBox无法从此PDF中复制QR码吗? 有没有办法使用Java或PDFBox将其转换为图像?

为什么StringBuffer / StringBuilder不会覆盖equals或hashCode?

为什么StringBuffer / StringBuilder不会覆盖对象的equals() , hashcode()方法? 请建议我清楚的图片,以帮助理解问题…

JTable removeRow(),删除错误的行

我有一个JTable,我需要删除一行,即选中的行。 首先,我得到了表模型: DefaultTableModel model = (DefaultTableModel) table.getModel(); 然后是所选行(如果选择了第二行,则返回1,这是可以理解的,因为行从零开始): int selectedRow = table.getSelectedRow(); 然后我尝试删除该行: model.removeRow(selectedRow); 然后我再次设置表模型: table.setModel(model); 这实现了删除一个完全随机的行。 我根本无法理解为什么。 我已经使用table.setRowSorter(sorter)在某个时候对表进行了排序,但我不知道为什么这应该是一个问题。 如果绝对需要SSCCE请告诉我,因为我需要修改很多代码才能生成一个。 注意:这两行返回的值不同: System.out.println(table.getValueAt(selectedRow, 1)); System.out.println(model.getValueAt(selectedRow, 1));

如何处理ConcurrentModificationException

我从冷却计时器得到一个ConcurrentModificationException。 我使用线程每秒减少值,如下所示: public class CoolDownTimer implements Runnable { @Override public void run() { for (String s : playerCooldowns.keySet()) { playerCooldowns.put(s, playerCooldowns.get(s) – 20); if (playerCooldowns.get(s) <= 0) { playerCooldowns.remove(s); } } } } 所以每一秒都应该将每个玩家的冷却时间减少20,但问题是我在运行程序时每隔几个小时就会获得一次CME,特别是当很多人在线时。 如何使它如果仍在修改列表,它将等到当前操作完成并创建一种修改队列? 谢谢! 这是堆栈跟踪: 2012-06-18 20:59:05 [WARNING] Task of ‘SurvivorsClasses’ generated an exception java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(HashMap.java:839) at java.util.HashMap$KeyIterator.next(HashMap.java:874) at me.zachoooo.survivorclasses.CoolDownManager$CoolDownTimer.run(CoolDownManager.java:13) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:126) […]

调整JVM(GC)以实现高响应的服务器应用程序

我在Linux 64bit上运行一个具有8个核心CPU和6 GB内存的应用程序服务器。 服务器必须具有高响应性。 经过一番检查后,我发现在服务器上运行的应用程序创建了相当多的短期对象,并且只有大约200~400 MB的长寿命对象(只要没有内存泄漏) 阅读http://java.sun.com/javase/technologies/hotspot/gc/gc_tuning_6.html后,我使用这些JVM选项 -server -Xms2g -Xmx2g -XX:MaxPermSize=256m -XX:NewRatio=1 -XX:+UseConcMarkSweepGC 结果:次要GC需要0.01~0.02秒,主要GC需要1~3秒,小GC不断发生。 如何进一步改进或调整JVM? 堆大小? 但GC需要更多时间吗? 更大的NewSize和MaxNewSize(适合年轻一代)? 其他collections家? 并行GC? 让主要GC更频繁地进行是一个好主意吗? 如何?

背景中的反思 – Android

在我问这个之前我想说我不是在问你究竟是怎么做的,但是我正在寻找正确方向的提示或推动,因为我没有代码,但我想自己解决。 在我的Android应用程序中,我有一个普通的黑色背景,顶部有一个对象队列。 这些对象左右滚动(见图)。 我的问题是如何在背景中反映这些对象,就像在图像中完成一样? 我在谷歌和这个网站上搜索过类似的内容,但我找不到任何关于此事的内容

java DateTimeFormatterBuilder在测试时失败

我有一个简单的DateTimeFormatterBuilder jUnit测试。 在运行时它可以工作,当一些String出现在Spring-MVC hanlder( @RequestParam )上 在测试时,它失败并具有相同的String值。 测试值: 25-May-2018 11:10 待测方法: public void getTimeDifference(@RequestParam String startDate, @RequestParam String endDate) { DateTimeFormatter DATE_TIME_FORMAT = new DateTimeFormatterBuilder().parseCaseInsensitive().appendPattern(“dd-MMM-yyyy HH:mm”).toFormatter(); LocalDateTime.parse(startDate,DATE_TIME_FORMAT); return messages; } 测试方法: @Test public void testFormat() throws Exception { final String startDateFormatA = “25-May-2018 11:10”; final String endDateFormatA = “25-May-2018 11:10”; assertEquals(“06:00”, callDbController.getTimeDifference(startDateFormatA, endDateFormatA)[1]); } 我的测试:在运行时我设置一个断点并在Display-View上测试它: […]