matlab - arrayfun 和 string() 之间的冲突
问题描述
我希望能够方便地确保结构数组的字段仅包含字符串(而不是字符数组)。例如,
S(1).f='abc'; S(2).f='asdfa'; S(3).f="aegwer";
如果有
setfield(S(1),'f',string(S(1).f))
S(1).f
将成功转换"abc"
为预期。
然而,
arrayfun(@(s)setfield(s,'f',string(s.f)),S)
不仅无法将“f”下的所有字段值设置为字符串,而且实际上将“f”下的所有字段值都转换为字符数组。
为什么arrayfun
做成?string()
_ char()
或者是别的什么?
我正在使用的 MATLAB 版本:R2018a
解决方案
推荐阅读
- javascript - React Routing Redirect onClick
- android - 如何在 Android RemoteView 上应用 EmojiCompat(通知)
- ios - Having trouble decoding JSON in Swift 4
- sql - 使用 dB 链接在 2 个数据库之间移动 clob 列
- javascript - 当我按下时,我得到 ASCII 码 10 而不是 13
+ 米 - vba - 无法按名称选择工作表
- amazon-web-services - lambda 只能捕获 dynamodb 流的一部分
- java - 在 Apache POI 中的 Excel 中嵌入对象时如何保持预览图像的原始大小?
- c# - 鉴于这三种相似的方法,我们如何将它们浓缩为一个方法?
- java - 如何使用 Rest Assured 将数组列表添加到 Rest API 请求?