小编Mo.*_*Mo.的帖子

为什么在Java中使用静态嵌套接口?

我刚刚在代码库中找到了一个静态嵌套接口.

class Foo {
    public static interface Bar {
        /* snip */
    }
    /* snip */
}
Run Code Online (Sandbox Code Playgroud)

我以前从未见过这个.最初的开发者是遥不可及的.因此我不得不问:

静态接口背后的语义是什么?如果我删除了会有什么变化static?为什么有人会这样做?

java static interface

233
推荐指数
5
解决办法
8万
查看次数

从Cygwin打开一个文件

open在cygwin中是否有等效的OSX 命令.open使用该类型的默认应用程序打开一个文件.

我想做点什么

$ magic-command file.xls
#excel opens as if file.xls would have been double-clicked

$ magic-command file.txt
#notepad opens as if file.txt would have been double-clicked
Run Code Online (Sandbox Code Playgroud)

你明白了吗?

基本上类似于"cygwin-double-click"命令.

shell cygwin

105
推荐指数
3
解决办法
6万
查看次数

有没有办法让Firefox忽略无效的ssl-certificates?

我正在维护一些Web应用程序.开发和qa环境使用无效/过时的ssl证书.

虽然它通常是一件好事,但Firefox让我点击十几次才能接受证书,这非常令人讨厌.

是否有配置参数使Firefox(也可能是IE)接受任何ssl证书?

编辑:我接受了解决方案,这是有效的.但感谢所有建议使用自签名证书的人.我完全清楚,接受的解决方案给我留下了一个巨大的安全漏洞.尽管如此,我还是懒于更改所有应用程序和所有环境的证书......

但我也强烈建议任何人启用验证!

ssl firefox

72
推荐指数
4
解决办法
22万
查看次数

使用Hamcrest获得多个正确结果(是否存在or-matcher?)

我对匹配者比较陌生.我正在和Hamcrest一起 JUnit并且我喜欢它.

有没有办法说明多种选择中的一种是正确的?

就像是

assertThat( result, is( either( 1, or( 2, or( 3 ) ) ) ) ) //does not work in hamcrest
Run Code Online (Sandbox Code Playgroud)

我正在测试的方法返回一个集合的一个元素.该列表可能包含多个候选人.我当前的实现返回第一个命中,但这不是必需的.如果返回任何可能的候选人,我希望我的测试用例成功.你会怎么用Java表达这个?

(我对hamcrest替代品持开放态度)

java junit hamcrest matcher

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

如何在svn和/或git中"unversion"一个文件

它总是发生在我身上.我不小心版本文件,我不想被版本化(即开发人员/机器特定的配置文件).

如果我提交这个文件,我会搞乱所有其他开发者机器上的路径 - 他们会不高兴.

如果我从版本控制中删除该文件,它将从其他开发者机器中删除 - 他们会不高兴.

如果我选择永远不提交文件,我总是有一个"脏"的结账 - 我不开心.

是一种干净的方法来"修改"来自修订控制的文件,这会导致没有人感到不快乐吗?

编辑:尝试澄清一点:我已经将文件提交到存储库,我只想将其从版本控制中删除 - 我特别不希望它从每个人进行结账时被物理删除.我最初希望它被忽略.

答:如果我能接受第二个答案,那就是这个.它回答了关于git的问题 - 接受的答案是关于svn.

svn versioning git version-control

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

Unix shell文件复制flattening文件夹结构

在UNIX bash shell(特别是Mac OS X Leopard)上,将具有特定扩展名的每个文件从文件夹层次结构(包括子目录)复制到同一目标文件夹(没有子文件夹)的最简单方法是什么?

显然存在源层次结构中存在重复的问题.我不介意他们被覆盖.

示例:我需要复制以下层次结构中的每个.txt文件

/foo/a.txt
/foo/x.jpg
/foo/bar/a.txt
/foo/bar/c.jpg
/foo/bar/b.txt
Run Code Online (Sandbox Code Playgroud)

到名为'dest'的文件夹并获取:

/dest/a.txt
/dest/b.txt
Run Code Online (Sandbox Code Playgroud)

unix shell

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

Java编码标准/最佳实践 - 中断/继续标签的命名约定

有时标记的中断或继续可以使代码更具可读性.

OUTERLOOP: for ( ;/*stuff*/; ) {
    //...lots of code

    if ( isEnough() ) break OUTERLOOP;
    //...more code
}
Run Code Online (Sandbox Code Playgroud)

我想知道标签的常见惯例是什么.全部大写?第一次上限?

java convention label

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

重构标记的循环

我确信之后标记符/继续是一个总的"诺诺"在这里,我需要帮助去除标签了我的代码.

我有一个方阵和一个长度相同的矢量.向量中已经有一些值,取决于矩阵中的值,循环中的向量发生了变化.

我希望,代码片段基本上是可以理解的......

vectorLoop:
for( int idx = 0; idx < vectorLength; idx++) {
    if( conditionAtVectorPosition( v, idx ) ) continue vectorLoop;

    matrixLoop:
    for( rowIdx = 0; rowIdx < n; rowIdx++ ) {
        if( anotherConditionAtVector( v, rowIdx ) ) continue matrixLoop;
        if( conditionAtMatrixRowCol( m, rowIdx, idx ) ) continue vectorLoop;
    }
    setValueInVector( v, idx );
}     
Run Code Online (Sandbox Code Playgroud)

请说服我,没有标签就有更可读/更好的版本.

java refactoring label

18
推荐指数
1
解决办法
1829
查看次数

Objective-C中的Java-enum样式类?

我是Obj-C的新手,请原谅我,如果这是一个愚蠢的问题:

我如何以Javas枚举的方式实现一些?或者更确切地说:

我想要一个具有一些已知属性的类,这些属性在编译时修复并且每个实例都是唯一的.另外我只想要一种实例类型.

让我举一个Java的例子:

public enum MessageTypes {
  DEFAULT("white", "standard", 1),
  EXPRESS("red", "expressMessage", 2),
  BORADCAST("green", "broadcast", 3);

  String color; String tagName; int dbId;
  MessageTypes(String color, String tagName, int dbId) {
    // you get the idea
  }
  //some methonds like getEnumByTagName
}
Run Code Online (Sandbox Code Playgroud)

你会如何在Objective-C中做这样的事情?我错过了什么吗?这是一个糟糕的模式吗?

提前致谢!

编辑:对不起,如果我没有说清楚.我知道,obj-c枚举不是我想要的(因为它们只比int的typedef略多).

我想创建一组(特定的单例,不可变)特定类的实例.Apples Dev-Docs中的单例模式没有用,因为我想要一个类的多个不同实例,每个实例在其属性中都有单独的值.

这样做的目的是拥有多个可以作为属性分配给Message的消息类型(大约20个).我的每种消息类型都有(修复和预定义)颜色,属性值(以XML表示)和数字ID.

在Java中,我会在代码示例中使用枚举.但是如何创建不同的MessageType并将它们与Obj-C中的属性相关联?

创建20个MessageType的Sublcasses(每个都有一个包含属性的单例实例)对于这样一个简单的任务和完全的过度杀戮似乎很多工作.

我目前的方法是使用NSArray创建一个包含不同实例的类.首次访问类似+(id)messageTypeForId:NSInteger id_NSArray 的方法是预先填充的.但这感觉完全笨拙而且根本不优雅......

有更令人满意的方法吗?

objective-c

13
推荐指数
1
解决办法
3508
查看次数

bash中的高级目录切换

我知道一些改进目录的高级方法.pushdpopd(目录堆栈)或cd -(更改为上一个目录).

但我正在寻找快速实现以下目标的方法:

说,我在一个相当深的目录:

/this/is/a/very/deep/directory/structure/with\ lot\ of\ nasty/names
Run Code Online (Sandbox Code Playgroud)

我想切换到

/this/is/another/very/deep/directory/structure/with\ lot\ of\ nasty/names
Run Code Online (Sandbox Code Playgroud)

是否有酷/快/极客的方式(没有鼠标)?

bash

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