我们可以按a = [1:3]
指定一个列表
但与此同时,
我们还可以按a = 1:3
指定列表。
我看到a
命令窗口的输出是相同的,即
a =
1 2 3
但内部结构是否存在差异,我们无法看到并导致进一步计算的差异?
答案 0 :(得分:3)
我不这么认为。在MATLAB中,方括号可用于将一些矩阵连接在一起。例如,我可以做到
x = [1:2, 5:7, 9:12]
x =
1 2 5 6 7 9 10 11 12
在您的情况下,您只使用一个矩阵进行矩阵连接,这只会产生所提供的矩阵。
答案 1 :(得分:0)
你甚至不需要去向量。即使对于标量,以下内容也是等效的:
a = 123;
a = [ 123 ];
第一个将a
声明为标量123
,而第二个将其声明为长度为1的向量,其唯一元素为123
。在MATLAB中,这两者完全相同。
这是一个例子(使用八度):
octave:1> x = 123
x = 123
octave:2> x(2) = 456
x =
123 456
正如您所看到的,声明为标量的内容可以很容易地作为向量处理。我认为一切都只是作为载体存储。