在swift&;中使用bool的目的;节目粉碎
我正在网上观看斯坦福iOS8课程,我有一个关于使用bool的目的的问题 第一部分是关于创建计算器的。本节的第一课是关于在计算器屏幕上显示用户按下的数字。讲师指出,为了显示每个数字的开头不带零的数字,程序应该有这个布尔变量在swift&;中使用bool的目的;节目粉碎,swift,ios8,Swift,Ios8,我正在网上观看斯坦福iOS8课程,我有一个关于使用bool的目的的问题 第一部分是关于创建计算器的。本节的第一课是关于在计算器屏幕上显示用户按下的数字。讲师指出,为了显示每个数字的开头不带零的数字,程序应该有这个布尔变量 var userIsInTheMiddleOfTypyingANmuber: Bool = false 然而,我真的不明白它在这个项目中是如何工作的,或者为什么讲师会这样使用它。有人能给我解释一下吗?为什么我的程序在按下键盘上的任意两个数字后会崩溃?提前谢谢 我本想添加照片,
var userIsInTheMiddleOfTypyingANmuber: Bool = false
然而,我真的不明白它在这个项目中是如何工作的,或者为什么讲师会这样使用它。有人能给我解释一下吗?为什么我的程序在按下键盘上的任意两个数字后会崩溃?提前谢谢
我本想添加照片,但我不能,因为我没有足够的声誉点数
使用布尔变量之前的显示屏幕如下所示:
0567
使用布尔变量后的显示屏幕如下所示:
567
您没有处理代码中零
0
的情况。这就是布尔值的作用。如果userIsInTheMiddleOfTyping
为true
,则表示您不在输入的开头
在伪代码中仔细考虑:
if userIsTypingFirstDigit (that is, userIsInTheMiddleOfTyping == false)
if digitIsZero
add the zero to the input text
(but leave userIsInTheMiddleOfTyping as false)
else
replace the input text with the digit (which replaces any zeros typed)
set userIsInTheMiddleOfTyping to true
else
add the digit to the input text (including zeros)
快乐编码。1)关于
在这里,用户是inthemiddleoftypinganmuber
(一个标志
变量)是为了确保每次开始输入数字时都重置显示
标签
例如,计算12345+789
1) 输入1
-->最初,标志
为假,因此显示
=1
2) 现在继续输入2345
--->标志为真,然后显示=
12345
3) 输入+
--->将标志重置为假
4) 输入7
--->,因为标志为假,所以显示
=
7
(即使12345
消失,重置)。
否则,显示将是123457
(错误!!!)
5) 现在继续输入89
--->标志为真,然后显示=789
2) 关于撞车,
因为没有相关的错误信息,所以很难判断。
但是,基本上,要确保所有标签
按钮
控制器都与ViewController连接良好,否则会导致崩溃
if userIsTypingFirstDigit (that is, userIsInTheMiddleOfTyping == false)
if digitIsZero
add the zero to the input text
(but leave userIsInTheMiddleOfTyping as false)
else
replace the input text with the digit (which replaces any zeros typed)
set userIsInTheMiddleOfTyping to true
else
add the digit to the input text (including zeros)
var userIsInTheMiddleOfTypyingANmuber: Bool = false