小编Jam*_*fer的帖子

为什么默认的IntelliJ默认类javadoc注释使用非标准语法?

为什么默认的IntelliJ默认类javadoc注释使用非标准语法?它不是用"User:jstauffer"创建一行,而是可以用"@author jstauffer"创建一行.它创建的其他行(日期和时间)可能没有使用javadoc语法,但为什么不在可用时使用javadoc语法?

这里有一个例子供参考:

/**
 * Created by IntelliJ IDEA.
 * User: jstauffer
 * Date: Nov 13, 2007
 * Time: 11:15:10 AM
 * To change this template use File | Settings | File Templates.
 */

javadoc intellij-idea

44
推荐指数
2
解决办法
2万
查看次数

用for循环或while循环迭代?

我经常看到如下代码:

Iterator i = list.iterator();
while(i.hasNext()) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

但我写的是(当Java 1.5不可用或者每个都不能使用时):

for(Iterator i = list.iterator(); i.hasNext(); ) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

因为

  • 它更短
  • 它保持i在较小的范围内
  • 它减少了混淆的可能性.(在i外面使用?i声明在哪里?)

我认为代码应该尽可能简单易懂,这样我才能制作复杂的代码来完成复杂的事情.你怎么看?哪个更好?

来自:http://jamesjava.blogspot.com/2006/04/iterating.html

java iterator for-loop

40
推荐指数
4
解决办法
5万
查看次数

一般认为toString()成本低是否安全?

您是否通常假设任何给定对象上的toString()成本较低(即用于记录)?我做.这个假设有效吗?如果成本高,通常应该改变吗?以高成本制作toString()方法的正当理由是什么?我唯一一次关注字符串费用是因为我知道它与某些成员集合在一起.来自:http://jamesjava.blogspot.com/2007/08/tostring-cost.html

更新:另一种说法是:在调用之前,您是否经常考虑在任何给定类上调用toString的成本?

c# java

14
推荐指数
4
解决办法
2575
查看次数

如何提高Windows Subversion客户端更新性能?

如何提高Subversion客户端更新性能?它似乎是客户端上的磁盘绑定.

细节:

  • CollabNet Windows客户端版本1.6.2(r37639)
  • Windows XP SP2
  • 3 GB RAM,PF使用率约为1 GB,系统缓存为1.1 GB.
  • 磁盘已启用写入缓存
  • 更新需要7-15分钟(更新时很少).
  • Checkout有36,083个目录/文件(来自svn列表)
  • 存储库有58,750个修订版.
  • 结帐大约需要2.7 GB
  • Perf监视器显示更新期间%Disk写入时间保持在90%附近.
  • 最大磁盘读取字节数/秒达到12.8M,写入速度达到5.2M
  • CPU,页面文件使用情况和网络使用率都很低.
  • 观察服务器性能似乎表明它不是瓶颈.

除了获得更快的磁盘(特别是配置更改)之外,我对答案特别感兴趣.

一些建议的更新:

  • 我需要整个事情,所以稀疏的目录将无法正常工作.
  • 另一个客户(TortoiseSVN)也需要7分钟
  • 已配置TortoiseSVN图标叠加,因此它们不会导致问题.
  • 防病毒配置为跳过该目录,因为它不会导致问题.

svn performance

10
推荐指数
1
解决办法
3397
查看次数

如何在架构层面规划例外?

是否有任何好的资源来规划如何从架构角度使用异常?(或者直接在这里提供你的建议.)在我工作的项目中,我发现一些常见的异常被反复使用并且往往会失去意义.来自:http://jamesjava.blogspot.com/2007/10/exception-plan.html

java architecture exception

9
推荐指数
1
解决办法
726
查看次数

unix管道命令的调试器

当我构建*nix管道命令时,我发现我想在构建下一个阶段之前看到一个阶段的输出来验证正确性,但我不想重新运行每个阶段.有谁知道一个有助于此的程序?它会使最后一个阶段的输出自动用于任何新阶段.我通常通过将每个命令的结果发送到一个临时文件(即tee或每次运行一个命令)来做到这一点,但是程序处理它会很好.

我想象一个类似于选项卡式界面的东西,其中每个选项卡都标有每个管道命令,并选择一个选项卡显示将该命令应用于前一个结果的输出(至少一百行).

shell terminal

4
推荐指数
1
解决办法
833
查看次数

自动演员会有用吗?

将Java编译器更改为自动转换是否有任何缺点或问题?在下面的示例中,list.get(0)的结果将自动转换为变量hi的类型.

List list = new ArrayList();
list.add("hi");
String hi = list.get(0);
Run Code Online (Sandbox Code Playgroud)

我知道仿制药允许你减少铸造,但他们这样做是以牺牲宣言更难为代价的.对我来说,仿制药的好处是,它们允许你有编译器执行多个规则 - 而不是他们自己减少铸件(但我没有用他们多少让我有些不知情).此提案只会减少要键入的代码量,而不会将其移动到其他位置.此外,还存在无法使用泛型的情况,因为集合可能具有不同的对象.如果根据当前使用情况"看起来太令人惊讶",可能会有语法调整来使用它.

来自:http://jamesjava.blogspot.com/2007/01/automatic-casting.html

java compiler-construction

-2
推荐指数
2
解决办法
1129
查看次数