问题列表 - 第1288页

ColdFusion:从列表中选择第一个非null值

在JavaScript中,您可以这样做:

var a = null;
var b = "I'm a value";
var c = null;
var result = a || b || c;
Run Code Online (Sandbox Code Playgroud)

并且'result'将获得'b'的值,因为JavaScript会使'或'运算符短路.

我想在ColdFusion中使用一行成语,我能想到的最好的是:

<cfif LEN(c) GT 0><cfset result=c></cfif>
<cfif LEN(b) GT 0><cfset result=b></cfif>
<cfif LEN(a) GT 0><cfset result=a></cfif>
Run Code Online (Sandbox Code Playgroud)

任何人都可以比这更好吗?

coldfusion idioms

3
推荐指数
1
解决办法
1212
查看次数

单元测试命名最佳实践

命名单元测试类和测试方法的最佳实践是什么?

之前在SO上讨论了这个问题,单元测试有哪些流行的命名约定?

我不知道这是一个非常好的方法,但是目前在我的测试项目中,我在每个生产类和测试类之间都有一对一的映射,例如ProductProductTest.

在我的测试类中,然后我有方法,其中包含我正在测试的方法的名称,下划线,然后是情况和我期望发生的事情,例如Save_ShouldThrowExceptionWithNullName().

unit-testing naming-conventions

538
推荐指数
9
解决办法
27万
查看次数

Vim自动生成ctags

现在我有以下内容.vimrc:

au BufWritePost *.c,*.cpp,*.h !ctags -R
Run Code Online (Sandbox Code Playgroud)

这有一些问题:

  1. 它很慢 - 为自上次标记生成以来未更改的文件重新生成标记.
  2. 由于不可避免的"按Enter或键入命令继续",我必须在写入文件后再次按下输入按钮.

当你将这两个问题结合起来时,我最终推迟了额外的输入(在ctags -R完成之前),然后看到恼人的错误信息,并且必须再次按回车键.

我知道这听起来不是什么大不了的事,但随着我在某一天所做的文件写入量的增加,它往往会变得非常烦人.必须有一个更好的方法来做到这一点!

vim autocomplete ctags

54
推荐指数
4
解决办法
3万
查看次数

C#对象不为null,但(myObject!= null)仍然返回false

我需要在对象和NULL之间进行比较.当对象不是NULL时,我用一些数据填充它.

这是代码:

 if (region != null)
 {
  ....
 }
Run Code Online (Sandbox Code Playgroud)

这是有效的,但是当某些时候循环和循环时,region对象是非null(我可以在调试模式下看到其中的数据).在调试时一步一步,它不会进入IF语句...当我使用以下表达式进行快速监视时:我看到(region == null)返回false,AND(区域!= null )也返回错误... 为什么以及如何?

更新

有人指出对象是==和!=重载:

    public static bool operator ==(Region r1, Region r2)
    {
        if (object.ReferenceEquals(r1, null))
        {
            return false;
        }
        if (object.ReferenceEquals(r2, null))
        {
            return false;
        }

        return (r1.Cmr.CompareTo(r2.Cmr) == 0 && r1.Id == r2.Id);
    }


    public static bool operator !=(Region r1, Region r2)
    {
        if (object.ReferenceEquals(r1, null))
        {
            return false;
        }
        if (object.ReferenceEquals(r2, null))
        {
            return false;
        }
        return (r1.Cmr.CompareTo(r2.Cmr) != 0 || r1.Id != r2.Id); …
Run Code Online (Sandbox Code Playgroud)

c# null compare

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

什么是Ruby中的"for"

在Ruby中:

for i in A do
    # some code
end
Run Code Online (Sandbox Code Playgroud)

是相同的:

A.each do |i|
   # some code
end
Run Code Online (Sandbox Code Playgroud)

for 不是内核方法:

  • for红宝石究竟是什么" "
  • 有没有办法使用其他关键字来做类似的事情?

就像是:

 total = sum i in I {x[i]}
Run Code Online (Sandbox Code Playgroud)

映射到:

 total = I.sum {|i] x[i]}
Run Code Online (Sandbox Code Playgroud)

ruby metaprogramming

23
推荐指数
3
解决办法
7769
查看次数

独立于操作系统的API来监控文件系统?

我想尝试一下有关分布式文件同步/复制的想法.为了在用户工作时提高效率,我想实现某种守护进程来监视某些目录中的更改(例如/ home/user/dirToBeMonitored或c:\ docs和setts\user\dirToBeMonitored).因此,我可以知道每次(或在合理的时间间隔内)添加/更改/删除了哪个文件名.

这可能与任何高中级语言一起使用吗?你知道一些API(以及使用哪种语言?)来做到这一点?

谢谢.

file-monitoring platform-independent

8
推荐指数
2
解决办法
2968
查看次数

用Java下载邮件附件

我查看了参考文档,Spring似乎对发送邮件有很好的支持.但是,我需要登录邮件帐户,阅读邮件,并下载任何附件.是否正在下载Spring邮件API支持的邮件附件?

我知道您可以使用Java Mail API执行此操作,但在过去,我发现使用它非常冗长和令人不快.

编辑:我收到几个回复指向描述如何发送附件邮件的教程,但我要问的是如何从收到的邮件中读取附件.

干杯,唐

java email spring attachment

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

如何在Emacs中创建目录?

我怎样才能使用Emacs创建新目录?我使用什么命令?(如果可能,请提供一个例子)

directory emacs command

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

如何在PHP中将utf-8字符串转换为utf-16字符串

如何在PHP中将utf-8字符串转换为utf-16字符串?

php utf-8 utf-16

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

在没有DoEvents的情况下在VB6.0中取消长时间运行的进程?

是否可以在不使用DoEvents的情况下取消VB6.0中长时间运行的进程?

例如:

for i = 1 to someVeryHighNumber
    ' Do some work here '
    ...

    if cancel then
        exit for
    end if
next

Sub btnCancel_Click()
    cancel = true
End Sub
Run Code Online (Sandbox Code Playgroud)

我假设我需要一个"DoEvents"才能"如果取消那么......"还有更好的方法吗?有一阵子了...

vb6

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