2017-09-17 4 views
3

私はMATLAB R2015aを使用しています。 MATLAB環境でJava LinkedListを使用する場合は、行ベクトルを追加して検索すると、列ベクトルに変換されて表示されます。例えば、MATLABでJava LinkedListを使用する場合、配列の転置を防止する

import java.util.LinkedList 

x = [285 252 100 67] 
y = [280 252 107 71; 
    374 157 72 48] 
z = [284 253 103 68] 

LL = LinkedList(); 

LL.add(x); 
LL.add(y); 
LL.add(z); 

xn = LL.remove() 
yn = LL.remove() 
zn = LL.remove() 

xn, yn and znは、以下を得た:

xn = 

    285 
    252 
    100 
    67 


yn = 

    280 252 107 71 
    374 157 72 48 


zn = 

    284 
    253 
    103 
    68 

元のベクトルが厳密1 x nあるときにのみ起こります。 remove()の末尾にチェック条件を追加しないと、これが起こらないようにする方法はありますか?

+0

これは 'x = reshape([285 252 100 67]、1,1、[])'でも起こります。だから、 'add'メソッドは追加された配列の先頭の次元を取り除いて(' add'の直後に 'LL.toArray'をチェックして)、' x'が行であってもMatlabとは異なります。 –

+0

'LL .add({x}); '' LL.add(@()x); 'Octave AKA' javaMethod( "add"、LL、{x})で動作します。 'xn = LL.remove(); out = xn {1}'または 'xn = LL.remove(); out = xn();' – rahnema1

答えて

0

リンクリストがasciiである場合は、ファイルを行単位で読み込み、 "strsplit()"のような形式で各行の値を区切って表に追加することをお勧めします指定された列私はLinux/UNIX環境変数の値などを取得するためにこのメソッドを使用します。

これはバイナリデータでも実行できます。

関連する問題