创建具有相同前缀+顺序索引的 char 类型元胞数组的更简单代码?

Simpler code to create a cell array of char type with the same prefix + sequential indices?

我想创建一个具有相同前缀 + 顺序索引的元胞数组,例如 {'a1','a2','a3','a4','a5'}

下面的代码可以生成所需的输出,但我想应该有更短的代码可以做到。

>> strcat('a',arrayfun(@num2str,1:5,'UniformOutput',false))

ans =

  1×5 cell array

    {'a1'}    {'a2'}    {'a3'}    {'a4'}    {'a5'}

如果有人可以分享想法以更简单、更优雅的方式制作它,我们将不胜感激。

这并不完全相同,但如果您使用新的(不再那么新的)字符串数组,您可以:

"a" + (1:5)

这个returns:

ans = 

  1×5 string array

    "a1"    "a2"    "a3"    "a4"    "a5"

一般来说,对于某些事情,“新”字符串比旧的 char 数组使用起来更方便。如果要操作单个字符,最好继续使用 char 数组,但对于一般的字符串操作,尤其是一次操作多个字符串,字符串数组提供更好的功能。