有没有一种简单的方法来在Matlab中创建一组字符串?一套字符串高效实现
我会通过文件路径的列表,并希望在特定级别获取文件夹的所有名称。 但是由于在某些文件夹中有几个文件,我多次获取这些文件夹。
我知道是创建一个单元阵列,检查每次如果当前文件夹名称已在阵列中的可能性,如果没有,添加它。
另一种选择是使用java HashSet的类。
但有没有简单的内置Matlab的方式做这样的事情? 我不能使用矢量,因为它会创建一个不是字符串的字符矢量。
有没有一种简单的方法来在Matlab中创建一组字符串?一套字符串高效实现
我会通过文件路径的列表,并希望在特定级别获取文件夹的所有名称。 但是由于在某些文件夹中有几个文件,我多次获取这些文件夹。
我知道是创建一个单元阵列,检查每次如果当前文件夹名称已在阵列中的可能性,如果没有,添加它。
另一种选择是使用java HashSet的类。
但有没有简单的内置Matlab的方式做这样的事情? 我不能使用矢量,因为它会创建一个不是字符串的字符矢量。
遗憾的是没有什么作为高效与Java Set实现。
但是你可以使用set操作。您可以在union
之间添加,也可以在收藏中重复调用unique
。
如何 “唯一”:
x = {'dog', 'cat', 'cat', 'fish', 'horse', 'bird', 'rat', 'rat'};
x_set=unique(x)
x_set =
'bird' 'cat' 'dog' 'fish' 'horse' 'rat'
,然后跟进“ismember” – Jasper
谢谢你,我想我会只使用Java类HashSet的呢。 –