如果我有一个名为$ number的变量,并且具有以下Cmdlet:
Write-host "The final number is $number"
在写主机Cmdlet中是否可以将其设置为整数。
答案 0 :(得分:3)
我不确定您要完成什么。
如果我们这样做:
$numberAsString = '1'
$number.GetType()
然后,GetType()的输出将是字符串类型。 如果相反,我们这样做:
$numberAsInteger = 1
$number.GetType()
然后GetType()的输出将是整数类型。
您还可以执行以下操作(当分配是显式的时,此示例并没有多大意义,但是正如注释中指出的那样,如果您接受用户提供的值,则可能会很有用):
[int]$number = '1'
这将是一个整数,即使您将值分配为字符串也是如此。 但是,这似乎与write-host的输出无关。例如,您可以执行以下操作:
$number = '2'
Write-Host ('The final number is ' + ([int]$number))
这将起作用,但是输出将是相同的,在这种情况下,$ number仍将是字符串类型。
答案 1 :(得分:0)
非常不清楚您要问的是什么,但是从字面上理解您的问题,那么您可以:
aggregate(v ~ w, df, sum)
w v
1 1 250
2 2 124
3 3 89
如果您的意思是“转换为int”,那么可以,这也是可能的:
Write-host "The final number is $([int]$number = 42)"
# OUTPUT:
# The final number is 42
答案 2 :(得分:0)
要在字符串中插入整数,可以使用:
.~
或
write-host 'The final number is {0}' -f ([int]$Number)
在两种情况下,write-host "The final number is $([int]$Number)"
在形成字符串之前都会转换为$Number
。但是在形成字符串时,[int]
ist强制转换为[int]$Number
。