gpt4 book ai didi

objective-c - 如果字符串按字母顺序大于目标中的其他字符串

转载 作者:太空狗 更新时间:2023-10-30 03:12:14 25 4
gpt4 key购买 nike

我正在尝试使用 if 语句来计算出 2 个字符串中哪一个按字母顺序排在第一位。就像数字以及大于和小于:

if (1 < 2) {

仅使用字符串:

if(@"ahello" < @"bhello") {

或者我是否必须有一个包含所有字母的字符串,然后检查每个字符串中第一个字符的索引,看看哪个索引更大,小于另一个的索引在字母表中排在第一位,然后如果它们相等,则继续下一个字符并重复?

最佳答案

你可以做的是:

NSString *stringOne = @"abcdef";
NSString *stringTwo = @"defabc";

NSComparisonResult result = [stringOne compare:stringTwo];

if (result == NSOrderedAscending) // stringOne < stringTwo
...

if (result == NSOrderedDescending) // stringOne > stringTwo
...

if (result == NSOrderedSame) // stringOne == stringTwo
...

还有其他方法可以进行不同类型的比较(例如不区分大小写、不区分变音符号等),但是比较的结果仍然可以像上面那样处理。或者,有些人发现将 result 与 0 进行比较更容易。用于将 result 与 0 进行比较的运算符与可以进行字符串比较的其他语言中使用的运算符相同直接:

if (result < 0) // stringOne < stringTwo
...

if (result > 0) // stringOne > stringTwo
...

if (result == 0) // stringOne == stringTwo
...

NSString 的大多数(如果不是全部)compare:... 方法都是 compare:options:range:locale: 的包装器.您可以找到可以传递的不同类型的选项 here .

关于objective-c - 如果字符串按字母顺序大于目标中的其他字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2892748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com