Flash 如何按字母顺序比较Actionscript 3中的两个字符串 我在C++中使用了STRCMP(x,y)。你知道如何在as3中做到这一点吗
谢谢 您可以使用普通操作数!=!=<> 您必须自己实现该功能。这只是一个例子,当然要比这个多做一些工作Flash 如何按字母顺序比较Actionscript 3中的两个字符串 我在C++中使用了STRCMP(x,y)。你知道如何在as3中做到这一点吗,flash,actionscript-3,Flash,Actionscript 3,谢谢 您可以使用普通操作数!=!= 您必须自己实现该功能。这只是一个例子,当然要比这个多做一些工作 private function strComp( string1:String , string2:String ):int { var counter:int; for( var i:int ; i < string1.length ; ++i ) { if( string1.getCharAt(i) == string2.getCha
private function strComp( string1:String , string2:String ):int
{
var counter:int;
for( var i:int ; i < string1.length ; ++i )
{
if( string1.getCharAt(i) == string2.getCharAt(i) )
//increment counter
else
break;
}
return counter;
}
私有函数strComp(string1:String,string2:String):int
{
var计数器:int;
for(变量i:int;i
如果您想要的是一个简单的字符串比较,就不用自己编写了
var result:int = ObjectUtil.compare("stringA","stringB");
这就达到了您想要的效果。对于完整的Unicode字符串比较,您应该使用localeCompare方法:
var比较:int=a.localeCompare(b)代码>
它将返回前两个不同字母之间的字母顺序差(无论不同字母是第一个还是任何其他字母),如果字符串相同,则返回零。如果字母表中“a”排在第一位,则数字为负数;如果字母表中“b”排在第一位,则数字为正数
因此,您必须检查:
比较<0
(“a”排在第一位)
compare==0
(相同的字符串)
compare>0
(“b”排在第一位)
您还应该事先确保a和b都是小写的(或者都是大写,没关系,但都应该是同一个大小写),因为localeCompare认为大写和小写是完全不同的字母(这是因为此方法执行Unicode字符表比较;大写字母排在第一位).你想完成什么?结果如何?我不熟悉C++中的StrcMP函数,我希望如果字符串A==B,则返回0的函数;如果a>b(按字母顺序),则返回1;如果ab和a