ios - 如何使用objective c逐行打印数组元素
问题描述
NSArray* myInfo1 = [NSArray arrayWithArray:allhrStartTime];
[myInfo1 componentsJoinedByString:@"\n"];
NSArray* myInfo2 = [NSArray arrayWithArray:allhrStopTime];
[myInfo2 componentsJoinedByString:@"\n"];
NSArray* myInfo3 = [NSArray arrayWithArray:allhrStartLocation];
[myInfo3 componentsJoinedByString:@"\n"];
NSArray* myInfo4 = [NSArray arrayWithArray:allhrStopLocation];
[myInfo4 componentsJoinedByString:@"\n"];
NSArray* allInfo = [NSArray arrayWithObjects:headers, myInfo1,myInfo2 ,myInfo3,myInfo4, nil];'
解决方案
正如@Larme 在评论中所说,您正在调用一个返回值但不使用该值的方法。您似乎在类型之间也有一些混淆。
试试这个:
NSString *allhrStartTimeString = [allhrStartTime componentsJoinedByString:@"\n"];
NSLog(allhrStartTimeString);
第一行获取原始数组并将其中的值连接起来,用新行分隔每个值,以生成一个字符串。第二行在控制台上显示该字符串。你应该看到你所寻找的每一行的一个元素。
但是,您的代码建议您希望每个数组的内容在输出中显示为一列,从而生成表格结果。为此,您需要做更多的工作:
- 首先创建一个空实例
NSMutableString
- 使用
appendFormat:
将包含标题的第一行添加到此可变字符串 - 现在循环 for
ix
= 0 到列数组的最大索引- 再次使用
appendFormat:
将接下来的两个添加到可变字符串中,使用ix
每个数组的第 ' 个元素(allhrStartTime
,allhrStopTime
,allhrStartLocation
,allhrStopLocation
)
- 再次使用
- 结束循环
- 您的可变字符串现在以表格形式表示您的数据,将其显示在合适的文本字段中或将其转储到控制台,例如使用
NSLog
.
如果您在编写此代码时遇到困难,请提出一个新问题,请链接到此问题,以便人们了解历史,展示您编写的代码,并解释您遇到困难的地方。毫无疑问,有人会帮助你。高温高压
推荐阅读
- r - 字符串拆分后访问第 n 个元素
- javascript - 如何在我的 !!userinfo 命令中显示服务器中的语音时间和服务器中发送的消息?
- jenkins - 如何避免 Jenkins 重用工作空间?
- python - 如何通过 TCP 读取/写入使用 pymodbus 连接到网关的设备寄存器
- javascript - ExtJS 动画计数器从 0 到 N
- php - 重新打开表单时不显示平面文件信息
- android - Dexguard 删除 AndroidManifest.xml
- angular - 使用 get und set 方法更改字符串的格式 - set 方法永远不会被调用
- python - 张量流中边界框的坐标
- python - 如何在 Python 中从 CSV 导入数组数组