我是Android新手。我正在尝试开发我的第一个计算器。我的计算器输出很好,但我试图对它进行一些更改。请建议。我的输出是2 + 2 = 4.0当我把2 + 2和4.0放到2.8 + 1.2时,我怎么能得到4。
此外,请帮助我试图找出如何继续添加,直到我按=。
我正在查看的代码如下:
test "once you go to to app you are asked to sign in" do
get "/"
assert_redirected_to "/users/sign_in"
assert_select "title", "Home Sign-In"
end
答案 0 :(得分:0)
我猜你应该把你的计算设置为double,然后再将输出设置为TextView
(或者你正在使用的任何东西),检查输出是否为int
,然后确定哪种形式的输出设置为TextView
。
if ((variable == Math.floor(variable)) && !Double.isInfinite(variable)) {
// integral type
}
请参阅this
修改强>
我们的想法是检查数字的小数部分是否为0(即数字是整数。
您也可以使用这些条件[如果为true则变量为整数]
// check if
variable == Math.ceil(variable)
或
// check if
variable == Math.round(variable)
同样Math.round(float f)
将返回数字的整数形式!
答案 1 :(得分:-1)
要添加多个项目,首先要设置一个数组,其大小为用户可输入的时间长度,然后循环遍历每个数组,等效地添加它们...我知道这是一个模糊的答案,但你可以问我是否有任何不清楚的地方而且投票也很好。你对案例有正确的想法,只需尝试下面的代码
#create duplicate range
setDT(d1)[,`:=`(val1 = val)]
#setkey
setkey(d1, grp, val, val1)
setkey(d2, grp, from, to)
#join
d_merge <- foverlaps(d1, d2, nomatch = NA)
setDT(d_merge)[,`:=`(from = NULL,
to = NULL,
val1 = NULL)]
d_merge
# grp z val y1 y2
#1: a 11 2 1 5
#2: a 14 7 4 8
#3: b 15 6 3 7
#4: c 13 3 2 6