Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String Unity:在这种情况下,比较字符串似乎不起作用?_String_Unity3d_If Statement_String Comparison - Fatal编程技术网

String Unity:在这种情况下,比较字符串似乎不起作用?

String Unity:在这种情况下,比较字符串似乎不起作用?,string,unity3d,if-statement,string-comparison,String,Unity3d,If Statement,String Comparison,我试着比较函数中的字符串,如果它是真的,我就能做一些事情。然而,由于某种原因,我正在比较的两个字符串从来都不相等 我在函数中创建一个新字符串,从Json获取数据,然后将该字符串与另一个类中的另一个字符串进行比较。出于某种原因,这不起作用。调试显示两个字符串相等,但if语句返回false 我创建了另外两个字符串变量hello&hello2,它们的值都相同,这次比较正确 检查下面的图片。我做错了什么? 正如您在控制台中看到的,两个字符串具有相同的值: 图1。这里是我创建字符串zoneId的地方 图2

我试着比较函数中的字符串,如果它是真的,我就能做一些事情。然而,由于某种原因,我正在比较的两个字符串从来都不相等

我在函数中创建一个新字符串,从Json获取数据,然后将该字符串与另一个类中的另一个字符串进行比较。出于某种原因,这不起作用。调试显示两个字符串相等,但if语句返回false

我创建了另外两个字符串变量hello&hello2,它们的值都相同,这次比较正确

检查下面的图片。我做错了什么? 正如您在控制台中看到的,两个字符串具有相同的值:

图1。这里是我创建字符串zoneId的地方

图2。在同一个函数的下一步,循环也是如此。 在这里,我试图将这个函数中创建的字符串与另一个类中的另一个字符串进行比较。

图3。正如您在控制台中看到的,它正在jsonArray中循环。但是它返回false,即使很明显两个字符串都有相同的值。

图4和图5。在这里,我使用函数中的另外两个字符串进行测试,它们工作正常。 它是否与从另一个类调用字符串有关

下面是如何设置userInfo中的其他字符串:

public string userID { get; private set; } 

在图3中,在第二个2之前是否有额外的空间


如何处理Main.Instance.userInfo.zoneID?

您需要使用string.Equals进行字符串比较,而不是使用运算符==或!=


顺便说一句,我的userInfo中的另一个字符串是如何设置的:公共字符串userID{get;private set;}它是否与get/set有关?我只获取了值,所以它应该不会有任何问题?看起来Main.Instance.userInfo.zoneID在2前面有一个空格,但zoneID没有。请将Unity日志输出粘贴到您的问题中,而不是发布屏幕截图,以便我可以验证这一点。一般来说:如果此ID的值是int,为什么要将其用作字符串?而是直接将其序列化和反序列化为int!你可能是对的。某处似乎有一个空间,但我不知道如何和在哪里。userInfo中的zoneID来自www.downloadHandler.text,来自一个php脚本。脚本返回带有echo$row[zoneID]的zoneID;关于此的另一个线程: