菜鸟教程小白 发表于 2022-12-13 14:11:32

ios - 在 Swift 3 中创建封闭范围不起作用


                                            <p><p>谁能告诉我为什么下面的代码在 Swift 2 中有效,但在 Swift 3 中却以某种方式中断?</p>

<pre><code>let range: Range = 0...2
</code></pre>

<p>但是,这样做可以简单地修复它</p>

<pre><code>let range: Range = 0..&lt;3
</code></pre>

<p>有人知道这是什么原因吗?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>运算符 <code>...</code> 和 <code>..<</code> 在 Swift 2.x 中用于生成相同的类型 <code>Range</code>。现在他们生产不同的类型(<a href="https://swift.org/migration-guide/" rel="noreferrer noopener nofollow">migration guide</a>):</p>

<ul>
<li><code>范围</code></li>
<li><code>CountableRange</code></li>
<li><code>ClosedRange</code></li>
<li><code>CountableClosedRange</code></li>
</ul>

<p>将第一个分配中的类型更改为 <code>ClosedRange</code> 应该可以解决问题。更好的是,让 Swift 为您推断类型:</p>

<pre><code>let range = 0...2
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在 Swift 3 中创建封闭范围不起作用,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/39805903/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/39805903/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在 Swift 3 中创建封闭范围不起作用