我开始使用FsUnit来测试F#代码.它可以用F#样式表达断言,例如:
[<Test>]
member this.``Portugal voted for 23 countries in 2001 Eurovision contest``() =
this.totalVotes
|> getYearVotesFromCountry "Portugal" 2001
|> Seq.length
|> should equal 23
Run Code Online (Sandbox Code Playgroud)
注意我应该从FsUnit得到"应该等于23".以下是FsUnit如何定义它:
let equal x = new EqualConstraint(x)
对于浮点数,它并不那么简单.我必须使用EqualConstraint和Within方法.它自然适合C#:
Assert.That(result).Is.EqualTo(1).Within(0.05);
Run Code Online (Sandbox Code Playgroud)
当然我希望能用F#写:
result |> should equal 1 within 0.05
Run Code Online (Sandbox Code Playgroud)
但这不起作用.我最终定义了一个新函数:
let almostEqual x = (new EqualConstraint(x)).Within(0.01)
Run Code Online (Sandbox Code Playgroud)
或者如果我想参数化精度,我可以将其指定为第二个参数:
let equalWithin x y = (new EqualConstraint(x)).Within(y)
Run Code Online (Sandbox Code Playgroud)
但它们都不漂亮.我想以更自然的方式为F#定义"内部"函数,因此它可以与相等的一起使用.F#不支持方法重载,因此看起来我无法以这种方式定义它,因此"相等"可以单独使用或与"内部"一起使用.
有任何想法吗?
我想弄清楚如何将相同的值插入表的整个列?该表已经存在,我有一个空列,我想插入一个特定的值,例如今天的日期.我只找到了解释如何将值插入整行的资源.
我有个问题.在Struts中,我有一个处理用户身份验证的Action,即我获取了用户的凭据并使用DAO来验证用户凭据.我想在Spring中保持相同的设置.我正在使用Spring 3.0.3 RELEASE.
我的问题是,我已经阅读了Spring Security,并在那里指定了JDBC后端"Validation"提供程序.我想知道,如果用户单击"登录"它将提交凭据提交给我的控制器以检查有效身份验证,该怎么办?
我想这样做的原因是我有一个处理用户身份验证和授权的服务.
提前致谢.
PS如何在Spring中使某些控制器安全?
PPS我是Spring的新手
这是一个实际的面试问题.O_O
让我们不谈谈在面试中提出这样一个问题的问题.
我想知道用于C或C++的ol'TCP套接字方法的替代方法(例如库)是什么样的.
我对平台,编译器等没有任何假设 - 请选择.
我不是要求你们实际编写程序,而只是指出可能用于此目的的技术,并且可能是在C/C++中使用该技术的示例或教程.
我想知道D是多么成熟和稳定,如果它可能是C/C++的一个很好的替代品.
我知道目前有两个标准库(Phobos和Tango).是否仍然没有统一的标准库?
另外我前段时间听说语言在GCed /非GCed代码的边界上存在问题.我在D网站上找不到任何关于它的参考,这个问题仍然是正确的吗?
在我的程序将要运行的环境中,人们使用','和'.' 在具有','和'.'的PC上随机显示小数分隔符 分隔符.
你将如何实现这样的floatparse(字符串)函数?
我试过这个:
try
{
d = float.Parse(s);
}
catch
{
try
{
d = float.Parse(s.Replace(".", ","));
}
catch
{
d = float.Parse(s.Replace(",", "."));
}
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.当我调试它时,它第一次想到"."就会错误地解析它.是数千的分隔符(如100.000.000,0).
我是C#的noob,所以希望那里有更简单的解决方案:-)
注意:人们将同时使用'.' 和','在具有不同分隔符设置的PC中.
我是一个新手Python用户试图做一些我认为应该简单但无法解决的问题.我定义了2个变量:
a = 'lemon'
b = 'lime'
Run Code Online (Sandbox Code Playgroud)
有人能告诉我如何在新变量中组合这些吗?
如果我尝试:
>>> soda = "a" + "b"
>>> soda
'ab'
Run Code Online (Sandbox Code Playgroud)
我想要苏打水'lemonlime'.这是怎么做到的?
谢谢!
假设我正在做这样的事情(来自Active Record Querying指南)
Item.transaction do
i = Item.first(:lock => true)
i.name = 'Jones'
i.save
end
Run Code Online (Sandbox Code Playgroud)
是否在交易结束时自动释放锁定?我查看了Active Query指南和ActiveRecord :: Locking :: Pessimistic文档,但无法找到明确说明锁定释放位置的位置.
在工作代码中,我们有许多魔术字符串的使用,如下面的代码片段:
if (user.HasRight("Profile.View")) {...}
Run Code Online (Sandbox Code Playgroud)
因此,有很多地方我们将字符串作为参数传递,以查看用户是否具有特定权限.我不喜欢这样,因为它产生了很多神奇的字符串.
做一个更好的方法是什么?
Enum,Constant,class?
我有这个代码:
foreach ($cartContents as $item => $itemQty)
echo "$item <br /> $itemQty <br /> $price";
Run Code Online (Sandbox Code Playgroud)
它循环浏览一些项目并打印名称,数量和价格.然后我想打印所有加在一起的价格.有没有办法得到这个数字?
.net ×1
c ×1
c# ×1
c++ ×1
d ×1
f# ×1
foreach ×1
fsunit ×1
java ×1
locking ×1
magic-string ×1
nunit ×1
parsing ×1
pessimistic ×1
phobos ×1
php ×1
postgresql ×1
python ×1
spring ×1
spring-mvc ×1
sql-insert ×1
sql-update ×1
tango ×1