flo*_*del 14 integer r exponent
给出两个整数:
a <- 1L
b <- 1L
Run Code Online (Sandbox Code Playgroud)
正如我所料,添加,减去或乘以它们也会给出一个整数:
class(a + b)
# [1] "integer"
class(a - b)
# [1] "integer"
class(a * b)
# [1] "integer"
Run Code Online (Sandbox Code Playgroud)
但除以它们给出一个数字:
class(a / b)
# [1] "numeric"
Run Code Online (Sandbox Code Playgroud)
我想我可以理解为什么:因为整数的其他组合(例如a <- 2L和b <- 3L)会返回一个数字,所以总是返回一个数字更常见.
求取指数:
class(a ^ b)
# [1] "numeric"
Run Code Online (Sandbox Code Playgroud)
这个对我来说有点意外.谁能解释为什么它是这样设计的?