Questions tagged «java»

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

17
如何删除文本文件的内容而不删除自身
我想将文件“ A”的内容复制到文件“ B”。复制完成后,我想清除文件“ A”的内容,并希望从文件开始就开始写。我无法删除文件“ A”,因为它与其他一些任务有关。 我能够使用Java的文件API(readLine())复制内容,但不知道如何清除文件内容并将文件指针设置为文件的开头。
89 java  android 

8
Java中的快捷方式“或分配”(| =)运算符
我在Java中有很长的比较需要做,我想知道其中是否有一个或多个是正确的。比较字符串很长且难以阅读,因此为了便于阅读,我对其进行了分解,并自动使用快捷方式运算符|=而不是negativeValue = negativeValue || boolean。 boolean negativeValue = false; negativeValue |= (defaultStock < 0); negativeValue |= (defaultWholesale < 0); negativeValue |= (defaultRetail < 0); negativeValue |= (defaultDelivery < 0); negativeValue如果任何默认<something>值为负,我希望是真实的。这有效吗?会满足我的期望吗?我在Sun的网站或stackoverflow上看不到它,但是Eclipse似乎没有问题,并且代码可以编译并运行。 同样,如果我想执行多个逻辑交集,是否可以使用&=代替&&?

2
在另一个bean的构造函数中引用时,@ Autowired bean为null
下面显示的是我尝试引用我的ApplicationProperties bean的代码片段。当我从构造函数中引用它时,它为null,但是从另一个方法中引用时,它很好。到现在为止,我在其他类中使用此自动装配的bean都没有问题。但这是我第一次尝试在另一个类的构造函数中使用它。 在下面的代码段中,当从构造方法调用时,applicationProperties为null,但在convert方法中引用时,则为null。我在想什么 @Component public class DocumentManager implements IDocumentManager { private Log logger = LogFactory.getLog(this.getClass()); private OfficeManager officeManager = null; private ConverterService converterService = null; @Autowired private IApplicationProperties applicationProperties; // If I try and use the Autowired applicationProperties bean in the constructor // it is null ? public DocumentManager() { …
89 java  spring  autowired 

7
为什么这不引发NullPointerException?
需要对以下代码进行澄清: StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; referToSample.append("B"); System.out.println(sample); 这将打印出来,B以便证明sample和referToSample对象引用相同的内存引用。 StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; sample.append("A"); referToSample.append("B"); System.out.println(referToSample); 这将打印出来AB,也证明是相同的。 StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; referToSample = null; referToSample.append("A"); System.out.println(sample); 显然,这将引发,NullPointerException因为我试图调用append空引用。 StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; …

4
番石榴的选修课有什么意义
我最近阅读了有关此内容的内容,并看到人们在使用此类,但在几乎所有情况下,使用效果null都很好-如果不是更直观的话。有人可以提供一个具体的例子,说明在哪些Optional方面null做不到或做得更干净的事情吗?我唯一能想到的就是将其与Maps不接受null键的键一起使用,但是即使这样,也可以通过对值的空值进行“映射”来实现。谁能为我提供更令人信服的论点?谢谢。
89 java  generics  guava 

3
org.springframework.mail的哪个工件?
我想使用Spring支持发送邮件。我的项目是使用maven-2构建的,我使用的是spring-core 2.5.5,我尝试在maven中央存储库中查找要包含在pom.xml中的工件,而我发现的唯一对象是spring support。问题在于回购中的最高版本是2.0.8,它取决于spring-core v.2.0.8。我应该添加它并从其依赖项中排除spring-core,spring-aop等,还是应该寻找另一个工件(但是哪个工件可以?)或使用另一个仓库?哪个是org.springframework.mail合适的Maven-2工件,在哪里可以找到它?

16
如何实现单个实例Java应用程序?
有时我会看到许多应用程序,例如msn,Windows Media Player等都是单实例应用程序(当用户在应用程序运行时执行时,将不会创建新的应用程序实例)。 在C#中,我Mutex为此使用类,但是我不知道如何在Java中执行此操作。

7
使用System.arraycopy(…)比for循环复制数组更好吗?
我想创建一个新的对象数组,将两个较小的数组放在一起。 它们不能为null,但大小可以为0。 我无法在这两种方式之间进行选择:它们是等效的还是效率更高的(例如system.arraycopy()复制整个块)? MyObject[] things = new MyObject[publicThings.length+privateThings.length]; System.arraycopy(publicThings, 0, things, 0, publicThings.length); System.arraycopy(privateThings, 0, things, publicThings.length, privateThings.length); 要么 MyObject[] things = new MyObject[publicThings.length+privateThings.length]; for (int i = 0; i < things.length; i++) { if (i<publicThings.length){ things[i] = publicThings[i] } else { things[i] = privateThings[i-publicThings.length] } } 唯一的区别是代码的外观吗? 编辑:感谢链接的问题,但他们似乎有一个尚未解决的讨论: 是否真的更快it …
89 java 

4
什么是循环反转技术?
我正在阅读一个文档,该文档讨论了Java的即时编译器(JIT)优化技术。其中之一是“循环反转”。文件说: 您将常规while循环替换为do-while循环。而 do-while循环的中设置if条款。这种替换导致更少的两次跳跃。 循环反转如何工作以及如何优化我们的代码路径? 注意: 如果有人可以用Java代码示例进行解释,以及JIT如何将其优化为本地代码以及为什么在现代处理器中是最佳的,那将是很棒的。

12
Java动态绑定和方法覆盖
昨天我接受了两个小时的技术电话面试(我通过了,woohoo!),但是我完全想出了以下有关Java动态绑定的问题。令人困惑的是,几年前我曾当过助教时曾向大学生教授这一概念,所以我给他们提供错误信息的前景有点令人不安... 这是给我的问题: /* What is the output of the following program? */ public class Test { public boolean equals( Test other ) { System.out.println( "Inside of Test.equals" ); return false; } public static void main( String [] args ) { Object t1 = new Test(); Object t2 = new Test(); …

12
聚合与构成[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 改善这个问题 我很难理解UML中的组合和聚合之间的区别。有人可以给我一个很好的比较和对比吗?我也很想学习识别代码之间的区别和/或看一个简短的软件/代码示例。 编辑:我问的部分原因是因为我们在工作中正在进行反向文档活动。我们已经编写了代码,但是我们需要返回并为代码创建类图。我们只想正确捕获关联。
89 java  oop  uml 

5
类型为int的文字xyz超出范围
目前,我正在使用Java处理数据类型,如果我正确理解该类型long,则可接受的值介于-9,223,372,036,854,775,808到+9,223,372,036,854,775,807之间。现在,您可以在下面看到,我创建了一个long名为的变量testLong,尽管当我将9223372036854775807插入为值时,我得到了一条错误消息: 类型为int的文字9223372036854775807超出范围。 我不知道为什么它将long数据类型称为int。 有人有主意吗? 码: char testChar = 01; byte testByte = -128; int testInt = -2147483648; short testShort = -32768; long testLong = 9223372036854775807; float testFoat; double testDouble = 4.940656458412; boolean testBool = true;
89 java  int  long-integer 



6
如何将Eclipse项目上传到GitHub?
我在Eclipse中有想要上传到GitHub的代码,但到目前为止我还不知道该怎么做。它说“创建存储库”,但是看起来更像是一个保存项目的文件夹,我不确定如何将代码上传到其中。为看似愚蠢的问题道歉。另外,如何删除存储库?也没有找到执行此操作的方法。
89 java  eclipse  git  github 

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.