应该用啥方法解决这样的无约束问题呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了应该用啥方法解决这样的无约束问题呢相关的知识,希望对你有一定的参考价值。

X为矩阵 x为X转换后的列向量, 这个问题是没有约束的, 是不是无法用增广拉格朗日函数解决呢

参考技术A 多目标的化成单目标解决!追问

可不可以说具体一点呢
或者有没有具体算法我可以看呢?

我应该用啥来比较 DBNull ?使用 DBNull.Value 或 ToString().IsNullOrEmpty()

【中文标题】我应该用啥来比较 DBNull ?使用 DBNull.Value 或 ToString().IsNullOrEmpty()【英文标题】:What should I use to compare DBNull ? Using DBNull.Value or ToString().IsNullOrEmpty()我应该用什么来比较 DBNull ?使用 DBNull.Value 或 ToString().IsNullOrEmpty() 【发布时间】:2011-03-24 13:33:14 【问题描述】:

我可以使用任何方法检查数据行上的DBnull

通过使用

if(dr[0][0]==DBNull.Value)
//do somethin

或通过做

if(dr[0][0].ToString().IsNullOrEmpty())
//do something

在这两种情况下,我都会得到相同的结果。

但是哪一个是concptually正确的方法。哪个会使用更少的资源

【问题讨论】:

.ToString().IsNullOrEmpty()?数据 row 是否有 2 个索引 dr[0][0]?如果dr[0][0] 为空怎么办,你不能调用.ToString()。通常最好提供工作代码以获得更好的答案。 @Kobi:我的错你是对的,我的意思是如果使用两个索引器,我的意思是 DataTable 对于第二种情况,如果该列中的值为 null,您将收到错误 【参考方案1】:

第一种方式有些正确。 然而,更被接受的方式是:

if ( dr[0][0] is DBNull )

而第二种方式肯定是不正确的。如果你使用第二种方式,你会在两种情况下得到 true:

    您的值为 DBNull 你的值是一个空字符串

【讨论】:

【参考方案2】:

从概念上讲,与DBNull.Value 的比较是正确的。

你也可以使用:

if (Convert.IsDBNull(dr[0]))


你也可以使用,我不喜欢,纯粹是因为它是类型比较而不是值比较:

if (dr[0] is DBNull)


【讨论】:

【参考方案3】:

总是使用:

dr[0].IsNull(0) 

假设这个函数的创建者知道比较的最佳方式/最有效的方式..

【讨论】:

【参考方案4】:

最简单的方法

if (dr[0][0] == DBNull.Value)
//do somethin

完全有效且可读。

即使 == 比较引用,它也可以在这里工作,因为 DBNUll.Value is the only instance of DBNull class - 所以所有 DBNull 值实际上都是这个精确的引用。

【讨论】:

以上是关于应该用啥方法解决这样的无约束问题呢的主要内容,如果未能解决你的问题,请参考以下文章

图像处理中,一张图片用啥算法检测它旋转了多少角度呢?

C#winform问题 datagridview中combobox选项改变触发事件用哪个方法。你是用啥方法解决的啊。

论文的公式应该用啥字体?

NFS13.exe-应用程序错误是怎么回事。用啥办法解决呢?速求解决办法呀

python非线性规划用啥模块

约束优化之Lagrange乘子法KKT条件对偶问题最容易理解解读