草庐IT

美团$方案$实践

全部标签

Java学院实践

我是Java初学者,也是这个站点的新手。我正在学习数组和方法,不幸的是我被卡住了问题是:一家医院可容纳150名患者。每个房间可容纳3名患者。医院向病人收取150美元的住院费。如果每个房间住3个病人,医院额外收取50美元。提示用户输入患者人数并显示患者总数、所有费用的总金额。在我看来,我想创建一个包含房间数量的并行数组和另一个包含每个房间患者数量的数组。问题是:每次程序都会询问以下内容。输入房间0的患者数量输入房间0的患者数量输入房间0的患者数量代替:输入#1房间的患者数量输入房间#2的患者数量输入房间#3的患者数量所以我认为这是一个逻辑错误,因为roomNumbers[i]没有更新到房

向量化计算的 Java 最佳实践

我正在研究在Java中计算昂贵的vector运算的方法,例如大矩阵之间的点积或乘法。这里有一些关于这个主题的好话题,比如this和this.似乎没有可靠的方法让JIT编译代码使用CPUvector指令(SSE2、AVX、MMX...)。此外,高性能线性代数库(ND4J、jblas等)实际上确实会为核心例程对BLAS/LAPACK库进行JNI调用。我知道BLAS/LAPACK包是本地线性代数计算的事实上标准选择。另一方面,其他人(JAMA,...)在没有native调用的情况下用纯Java实现算法。我的问题是:此处的最佳做法是什么?对BLAS/LAPACK进行native调用实际上是推荐

java - 循环消息/任务队列现有解决方案

考虑有一组有限的任务必须在特定时间段内完成(也在该时间段内均匀分布),然后一次又一次地重复。如果是一个本地工作线程/线程,我们只需做这样的事情(对伪代码感到抱歉):longinterval=period/tasks.sizewhile(true){for(taskintasks){task.do()sleep(interval)}}现在我想以分布式方式与多个独立工作人员一起执行此操作。对于这种情况,是否有一些已知的最佳实践解决方案(最好来自Java世界)?循环消息队列?分布式任务锁?我用google安静地搜索了一下,但看不到任何开箱即用的优雅解决方案。 最佳

java - ObjectMapper - 线程安全和性能的最佳实践

总结我想在下面描述的用例的上下文中找到在线程安全和性能方面使用ObjectMapper和/或ObjectReader的最佳实践。背景我有一个辅助类(Json.java),其中方法toObject()使用ObjectMapper从json转换字符串到给定(json可映射)类的对象。问题/疑问我读到,ObjectReader通常被推荐为完全线程安全的,但我主要看到它处于非泛型上下文中,其中预定义了要读取的类。在这种情况下,您认为在线程安全和性能方面的最佳实践是什么?在代码中,我提出了三个可以作为起点的建议。我已尝试查看jackson-databind的源代码和文档,但我的Java理论技能还

java - 国际化 Java Swing 桌面应用程序的最佳实践是什么?

我敢肯定有很多方法,但是对您的代码影响最小的推荐方法是什么?显而易见的是,您创建了属性文件,但如何在渲染中交换值?在J2EE中,您总是只需重新呈现整个页面,这样就很容易了。但是在Swing应用程序中,您只是在paintComponent(Graphicsg)方法中添加.getProperty()的代码吗?如果是这样的话,是不是看起来很繁重,因为现在你必须在之前不需要的任何地方重写这个方法......附加:您如何设置通知系统以重新呈现所有当前可见的组件而不强制某种注册模式?我想如果我覆盖了paintComponent(Graphicsg),我所要做的就是触发一个事件,表明某些东西已经改变

java - 使用 Controller、Service 和 Repository 注释的最佳实践是什么?

我对Spring-MVC中@Controller、@Service和@Repository的用法感到很困惑。我有几个问题,如果能得到解答,我将不胜感激。我知道Controller用于接收来自View的请求并向View发出请求以向用户显示结果。我的问题是,我可以在带有Controller注释的类中进行什么程度的处理?我是否应该在服务注释类中进行所有处理,并让Controller只接收请求和返回响应?我想知道最佳做法是什么?假设我需要调用服务注释类的不同方法来处理结果,我应该从Controller中调用它们还是将它们传递给服务注释类?(这只是一个例子)如果我不想处理结果而只想向数据库发送请

java - 为什么不推荐基于 AtomicInteger 的 Stream 解决方案?

假设我有这份水果list:-Listf=Arrays.asList("Banana","Apple","Grape","Orange","Kiwi");我需要为每个水果添加一个序列号并打印出来。水果或序列号的顺序无关紧要。所以这是一个有效的输出:-4.Kiwi3.Orange1.Grape2.Apple5.Banana解决方案#1AtomicIntegernumber=newAtomicInteger(0);Stringresult=f.parallelStream().map(i->String.format("%d.%s",number.incrementAndGet(),i)).

java - 记录可用/必需的 Java 属性文件内容的最佳实践

是否有完善的方法来记录Java“属性”文件内容,包括:指定给定键所需的数据类型/内容指定应用程序运行是否需要key提供key含义的描述目前,我(手动)维护一个默认的.properties文件,并且我在之前的评论中写了一个散文描述数据类型和每个键的描述。这不会导致以编程方式访问属性文件。我想我正在寻找的是属性文件的“getopt”等价物...[编辑:相关]JavaConfigurationFrameworks 最佳答案 您可以使用ApacheCommonsConfiguration中的一些功能包裹。它至少提供对您的属性的类型访问。传统

java - 带有 GUI 的应用程序的最佳实践

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我将要启动一个同时具有控制台和GUI界面的应用程序。我不想实现的是应用程序逻辑与界面的完全解耦。将来,我可能还会添加Web界面,我不想更改我的应用程序中的任何内容。是否有一个很好的例子(也许是一些开源项目),我可以在其中学习如何正确地完成这项工作......我也很感激关于如何做到这一点的建议/指南。谢谢

java - JOptionPane.showMessageDialog 的可选替代方案

背景信息:我有一个在海军服役的伙伴,他想知道我是否可以为他开发一个小应用程序,该应用程序可以在他执行guard任务时进行计算,因为显然依靠日历很难计算。我使用JOptionPane.showMessageDialog将日期输出给他。这就是我的做法。GregorianCalendarknownDate=newGregorianCalendar(year,month,day);GregorianCalendar[]futureDates=newGregorianCalendar[10];for(inti=0;i“唯一的问题”是您无法选择显示的文本。他想为IM和电子邮件选择它,因为只有一半懒