如何在PowerShell中将字符串转换为整数?

时间:2019-06-30 23:58:22

标签: string powershell integer int

我正在尝试从PowerShell中的变量创建字符串。我想将数字显示为字符串而不是整数。

我尝试将[str]放在变量之前,例如将字符串转换为整数([int]),但这给了我一个错误。我也搜索了我的问题,但没有人问过这样的问题。

有问题的代码是“ $ jstr”行。

for ($j = 0; $j -lt 1000; $j++)
    {
        $jstr = [str]$j
        $dot = "."
        $num = $jstr + $dot
        Write-Host $num, Get-Random -SetSeed $j
    }

我希望输出类似于“ 1. 随机数”,其中1是种子编号,随机数是映射到该种子的编号,< / p>

3 个答案:

答案 0 :(得分:0)

几种方法...

如果您将数字表示为字符串,则可以调用string的{​​{1}}方法:

enter image description here

您可以将其分配给具有类型标识符的变量:

enter image description here

但是,仅当字符串是全数字(没有非数字/非十六进制字符)时,此方法才有效。

如果要采用其他方法(将整数表示为字符串),请使用toInt32()方法:

toString()

答案 1 :(得分:0)

喜欢吗?

for ($j = 0; $j -lt 6; $j++)                                                                                          
{
  $rand = Get-Random -SetSeed $j
  "$j.$rand"
}

0.1866861594
1.42389573
2.365335408
3.688215708
4.1011161543
5.1334173171

答案 2 :(得分:0)

这是一种获取列表的方法,该列表的种子在左边,一个点,然后是随机数。它使用-f字符串格式运算符将数字放置在分配的空间中。 [咧嘴]

$Start = 0
$End = 10
$SLength = ([string]$Count).Length

$RMin = 0
$RMax = 1e3
$RLength = ([string]$RMax).Length

foreach ($Number in $Start..$End)
    {
    "{0,$SLength}. {1,$RLength}" -f $Number, (Get-Random -SetSeed $Number -InputObject ($RMin..$RMax))
    }

输出...

 0.  607
 1.  602
 2.  997
 3.  636
 4.  143
 5.  839
 6.    6
 7.  404
 8.  536
 9.  394
10.  124