Questions tagged «java»

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


21
“ while(true)”循环是如此糟糕吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我已经用Java编程了几年了,但是最近我刚回到学校获得了正式学位。得知我在上一次作业中因使用如下所示的循环而丢了积分,我感到非常惊讶。 do{ //get some input. //if the input meets my conditions, break; //Otherwise ask again. } while(true) 现在,对于我的测试,我只是在扫描一些控制台输入,但是我被告知不鼓励这种循环,因为使用break类似于goto,我们只是不这样做。 我完全理解gotoJava及其表亲的陷阱break:label,并且我有很好的理由不使用它们。我还意识到,一个更完整的程序可以提供其他一些逃生手段,例如只是结束程序,但这不是我的教授所引用的原因,所以... 这有什么错do-while(true)?

9
Spring @Autowired用法
在Spring会连接的类中使用@Autowired的优缺点是什么? 只是为了澄清一下,我是在专门讨论@Autowired注释,而不是XML的自动装配。 我可能只是不了解它,但是对我来说,这几乎像是一种反模式-您的类开始意识到它们与DI框架相关联,而不仅仅是POJO。也许我是一个受惩罚的but嘴,但我喜欢为bean使用外部XML配置,并且我喜欢进行显式的布线,因此我确切知道在哪里布线。
218 java  spring  autowired 

26
Java中字符串的不变性
考虑以下示例。 String str = new String(); str = "Hello"; System.out.println(str); //Prints Hello str = "Help!"; System.out.println(str); //Prints Help! 现在,在Java中,String对象是不可变的。然后如何为对象str分配值“帮助!”。这是否与Java中字符串的不变性相矛盾?有人可以向我解释不变性的确切概念吗? 编辑: 好。我现在明白了,但只是一个后续问题。那么下面的代码呢: String str = "Mississippi"; System.out.println(str); // prints Mississippi str = str.replace("i", "!"); System.out.println(str); // prints M!ss!ss!pp! 这是否意味着将再次创建两个对象(“密西西比”和“ M!ss!ss!pp!”),并且引用str在replace()方法之后指向另一个对象?

6
如何在很长的毫秒时间内创建Java 8 LocalDate?
我有一个外部API,它以longs为单位返回日期,表示自大纪元开始以来的毫秒数。 使用旧式Java API,我可以简单地Date使用 Date myDate = new Date(startDateLong) Java 8的LocalDate/ LocalDateTime类中的等效项是什么? 我感兴趣的所代表的时间点转换long到LocalDate我目前的本地时区。

10
Java命名约定(带缩写词)
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 以下Java类的正确名称是什么: DVDPlayer或DvdPlayer?



24
如何使用Mockito模拟最终课程
我有最后一堂课,像这样: public final class RainOnTrees{ public void startRain(){ // some code here } } 我正在像这样的其他班级使用这个班级: public class Seasons{ RainOnTrees rain = new RainOnTrees(); public void findSeasonAndRain(){ rain.startRain(); } } 在我的JUnit测试类中,Seasons.java我想模拟RainOnTrees该类。我该如何使用Mockito做到这一点?
218 java  junit  mockito 

19
Maven surefire无法找到ForkedBooter类
最近进入一个新项目,我正在尝试编译我们的源代码。昨天一切正常,但是今天又是另一个故事了。 每次我在mvn clean install模块上运行时,一旦通过测试,就会崩溃为错误: [INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ recorder --- [INFO] Surefire report directory: /lhome/code/recorder/target/surefire-reports [INFO] Using configured provider org.apache.maven.surefire.junitcore.JUnitCoreProvider [INFO] parallel='none', perCoreThreadCount=true, threadCount=0, useUnlimitedThreads=false, threadCountSuites=0, threadCountClasses=0, threadCountMethods=0, parallelOptimized=true ------------------------------------------------------- T E S T S ------------------------------------------------------- Error: Could not find or load main class org.apache.maven.surefire.booter.ForkedBooter Results : Tests run: …


13
Java中的静态嵌套类,为什么?
我正在查看Java代码LinkedList,发现它使用了静态嵌套类Entry。 public class LinkedList<E> ... { ... private static class Entry<E> { ... } } 使用静态嵌套类而不是普通内部类的原因是什么? 我能想到的唯一原因是Entry不能访问实例变量,因此从OOP的角度来看,它具有更好的封装性。 但是我认为可能还有其他原因,也许是性能。可能是什么? 注意。我希望我的术语正确,可以将其称为静态内部类,但我认为这是错误的:http : //java.sun.com/docs/books/tutorial/java/javaOO/nested.html
217 java  class  static  member 


1
将BigDecimal舍入为*始终*具有两个小数位
我正在尝试将BigDecimal值四舍五入到小数点后两位。 我正在使用 BigDecimal rounded = value.round(new MathContext(2, RoundingMode.CEILING)); logger.trace("rounded {} to {}", value, rounded); 但这并不能满足我的一贯要求: rounded 0.819 to 0.82 rounded 1.092 to 1.1 rounded 1.365 to 1.4 // should be 1.37 rounded 2.730 to 2.8 // should be 2.74 rounded 0.819 to 0.82 我不在乎有效数字,我只想要两位小数。我该如何使用BigDecimal?还是有另一个更适合于此的班级/图书馆?

10
错误:无法运行mksdcard SDK工具
尝试在Ubuntu上安装android studio时,在设置向导中始终出现错误。 "Unable to run mksdcard SDK tool." 另外,在终端我得到这个: [ 115528] ERROR - tRunWizard$SetupProgressStep$1 - Android Studio 1.1.0 Build #AI-135.1740770 [ 115531] ERROR - tRunWizard$SetupProgressStep$1 - JDK: 1.8.0_40 [ 115531] ERROR - tRunWizard$SetupProgressStep$1 - VM: Java HotSpot(TM) 64-Bit Server VM [ 115531] ERROR - tRunWizard$SetupProgressStep$1 - Vendor: Oracle Corporation [ …

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.