嗨,我有一个问题,我想测试,如果我的字符串不是空的,不等于string1我想做的事,但它不起作用.
我的代码:
NSUserDefaults *namePrefs = [NSUserDefaults standardUserDefaults];
NSString *savedName = [namePrefs stringForKey:@"myKey"];
if ((savedName != nil)&&([savedName isEqualToString:@"string1"])){ //
[self myFunction];
}
Run Code Online (Sandbox Code Playgroud)
当savedName为nil时,它不会进入
当它的值不是nil而不是string1时它进入它也没关系
但是当savedName是string1时它会进入,为什么?
谢谢你的任何帮助
所以我看看你是否想升级你的角色.如果你说是,它会再次问你,直到你达到20级(D&D级别上限)或直到你说不.
我键入y然后按Enter键,它说错了,点击n然后输入,同样的事情.这是我的代码:
char yn;
do {
cin >> yn;
while (yn != 'y' || yn != 'n') {
cout << "Only y or n are valid options, try again: ";
cin >> yn;
}
if (yn == 'y')
f.levelUp();
cout << endl;
} while(yn != 'n' || f.getLevel() != 20);
Run Code Online (Sandbox Code Playgroud)
我觉得我错过了一些非常明显的东西!
为什么
while(!s1.isEmpty() && !s2.isEmpty())
Run Code Online (Sandbox Code Playgroud)
和
while(!(s1.isEmpty() && s2.isEmpty()))
Run Code Online (Sandbox Code Playgroud)
不一样吗?
因为当我做的时候!(x&y)eclipse给了我一个错误.
http://pastebin.com/8zBK1jQv
错误信息:
Exception in thread "main" java.lang.NullPointerException
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个简单的程序,它将模拟一些石头剪刀游戏,并根据用户投入的模拟数量返回每个项目的胜利数量.但是,它仅打印出已经发生的绘制数量,并且打印出岩石,纸张和剪刀类别的绘制数量.我觉得这与我的逻辑有关,但是在最后20分钟内无法弄明白.此外,如果您发现任何格式问题或我可以做得更好的事情,请随时告诉我.这也不是家庭作业,只是一个小练习计划.多谢你们!
#Simulates games of rock paper scissors and tracks them
from random import randint
class tracker:
def __init__(self, games):
self.wins = {'rock': 0, 'paper': 0, 'scissors': 0, 'draw':0 }
self.games = games
def runSim(self):
def __init__(self):
pass
for game in range(0, self.games):
keys = ['rock', 'paper', 'scissors']
opp1 = keys[randint(0, 2)]
opp2 = keys[randint(0, 2)]
if (opp1 == opp2):
self.wins['draw'] = self.wins['draw'] + 1
elif ((opp1 or opp2) == 'rock') and ((opp1 or opp2) == 'scissors'):
self.wins['rock'] = self.wins['rock'] + …
Run Code Online (Sandbox Code Playgroud) 任务:
distance_from_zero
使用一个参数定义一个函数. int
或float
,则函数应返回函数输入的绝对值."Not an integer or float!"
我的回答不起作用:
def distance_from_zero(d):
if type(d) == int or float:
return abs(d)
else:
return "Not an integer or float!"
Run Code Online (Sandbox Code Playgroud) 在我的c#windows商店应用程序中,我有以下代码行来检测是否按下了CTRL键.我从在线样本中获得了这个代码,它运行得很好.
var state = Window.Current.CoreWindow.GetKeyState(Windows.System.VirtualKey.Control);
if ((state & CoreVirtualKeyStates.Down) == CoreVirtualKeyStates.Down)
{
// do something with e.Key
}
Run Code Online (Sandbox Code Playgroud)
具体来说,我以前从未见过if语句中的语法.
+用于添加整数或串联字符串,而&&用于组合2个布尔表达式,那么在这个上下文中做什么和做什么?
所以我想知道是否有办法做双倍大于,比如:
if(x > y > z) { ... }
Run Code Online (Sandbox Code Playgroud)
然后我看到这个 表达式"超过x而不是y"?
但后来我在控制台中尝试了以下表达式并获得了一个奇怪的结果:
(5 < 2 < 1) // returned true
(5 > 2 > 1) // returned false
Run Code Online (Sandbox Code Playgroud)
怎么样?
更新:我知道你不能这样做"(x> y> z)",只是想要解释奇怪的结果.
SELECT *
FROM Items
WHERE (Balance >= 0) OR (Item Like '%XF%' AND Balance > 0)
Run Code Online (Sandbox Code Playgroud)
这将返回所有项目balance >= 0
.
我需要它来报告带有balance >=0
OR的所有项目...所有项目都带有balance > 0
(但不等于0)并且在项目编号中有'XF'.
Item 1234 - Balance 0
Item 1234 - Balance 25
Item 1234-XF - Balance 25
Item 1234-XF - Balance 0 <-- should not be here because it is an XF and has a balance of 0.
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?如果我单独做各自的话,它确实有效,所以我不确定为什么我不能将两者结合起来.
说我定义a
和b
如下:
a = 1
b = 1
Run Code Online (Sandbox Code Playgroud)
然后我测试:
a == 1
#True
5>4
#True
a==1 & b==1
#True
5>4 & 4>3
#True
a==1 & 5>4
#False
Run Code Online (Sandbox Code Playgroud)
最后一个怎么回事?我希望能够测试最后的不等式并获得结果True
.
boolean-logic ×10
python ×3
if-statement ×2
logic ×2
boolean ×1
c# ×1
c++ ×1
cocoa ×1
inequality ×1
java ×1
javascript ×1
loops ×1
objective-c ×1
sql ×1
types ×1