我正在阅读约书亚·布洛赫(Joshua Bloch)撰写的Effective java,而在第8条中:当重写equals时服从一般合约 , 对于浮动字段,请使用Float.compare方法; 并为双字段使用Double.compare。 由于存在Float.NaN,-0.0f和类似的双常数,需要对float和double域进行特殊的处理; 有人可以解释我为什么我们不能使用==浮点或双比较
为什么某些stream需要刷新( FileOutputStream和来自套接字的stream),而标准输出stream不是? 每当有人使用System.out PrintStream对象时,无论是调用println()还是write() ,都不会刷新stream。 但是,其他程序员习惯性地使用其他stream调用flush() PrintStream / PrintWriter 。 我最近问这个问题给几个程序员,有些人认为在Java中有一些后台处理来自动刷新System.outstream,但我找不到任何文档。 像这样的东西让我怀疑是否只是调用System.out.println()是平台无关的,因为一些系统可能需要你刷新stream。
我想validation一个IPv4地址使用Java。 它应该使用小数点符号来表示 ,所以它应该有3个点(“ . ”),没有字符,点之间的数字,数字应该在一个有效的范围内。 应该怎么办?
给定一个以复杂的,循环的方式相互引用的类实例的聚合:垃圾收集器可能无法释放这些对象吗? 我隐约记得过去这是JVM中的一个问题,但是我认为这在多年前就已经解决了。 然而,一些调查显示,我现在正面临一个循环引用,就是造成内存泄露的原因。 注:我一直觉得JVM有能力解决循环引用,从内存中释放这些“垃圾岛”。 不过,我只是提出这个问题,看是否有人发现任何例外。
为什么第一个编译好,第二个编译失败呢? if(proceed) {int i;} // This compiles fine. if(proceed) int i;// This gives an error. (Syntax error on token ")", { expected after this token)
如果您有一个具有原始types(例如Byte,Integer,Char等)的Java对象数组。 有没有一种整洁的方式,我可以将其转换为原始types的数组? 特别是可以做到这一点,而不必创build一个新的数组,并通过内容循环。 举个例子,给出 Integer[] array 什么是最好的方式来转换成这个 int[] intArray 不幸的是,在Hibernate和我们无法控制的第三方库之间进行接口时,这是我们必须经常做的事情。 看来这将是一个相当常见的操作,所以如果没有捷径,我会感到惊讶。 谢谢你的帮助!
我有一个关于拖放的问题:我可以放置标签,文本或图标。 但是我想拖放一个JPanel及其所有组件(Label,Textbox,..等)。 我该怎么做?
哪些Java库适合浮点运算或定点运算,精度高达数千位? 他们有多高性能? 对我的一个要求是,它实现了一个乘法algorithm,它比原来的乘法algorithm要好4倍的倍数 (比较乘法algorithm )2倍的数字。
任何人都有一个想法,为什么这个命令在Windows中工作正常,但在Linux中,我得到一个ClassNotFoundException的game.ui.Main java -cp ".;lib/*" game.ui.Main -Xms64m -Xmx128m 我的文件夹结构如下所示:lib / – Jars游戏/ – Class文件 这是最新的Java 6。
在这里与图像的另一个问题(这似乎是比我最初预测更困难)我正在与JSF 2.0(Apache myFaces)的Java Web应用程序,我希望这个应用程序能够上传图片到目的地它将运行的服务器。 我有一台运行mySQL Db的Windows r2 2008服务器,但是我不想将图像存储在数据库中,我宁愿将其存储在服务器的某个位置,然后将path保存为数据库中的string。 我被告知这是最好的方法,但我似乎无法find如何将其保存在服务器上的示例。 我在Apache Tomcat服务器上运行该应用程序作为WAR文件。 所以我不知道是否必须将文件保存到服务器驱动器上的path(即C:\ images)或项目本身的特殊文件夹(在java,html文件内),任何帮助都是非常感谢, 我完全迷失了,一整天都在试图弄清楚这一点。 我用上传图片到java类的代码是这样的(CodyS提供): InputStream is = uploadedFile.getInputStream(); byte[] buffer = new byte[(int) uploadedFile.getSize()]; is.read(buffer); File f = new File("C:\\temp\\" + this.patient.getPk() + ".jpeg"); f.createNewFile(); FileOutputStream fos = new FileOutputStream(f); fos.write(buffer); //This is where I write it to the C Drive fos.close(); is.close(); 而不是写到我的C驱动器我要在服务器上运行它,但我应该在哪里存储图像以便稍后检索并显示在xhtml文件中? […]