Matlabでパラメータ化されたクラスを構築することは可能ですか?例えばJavaでは、私はArrayList<String> myList = new ArrayList<String>()
と言うことができます。私はmyList = java.util.ArrayList<String>()
を試しましたが、それはちょうど "予期しないかっこまたはブラケット"と言うエラーを出します。私は本当に私自身のパラメータ化されたクラスを使用していますが、私はこれの構文を取得することができれば十分であるはずです。MatlabのJava汎用クラスの使用
答えて
あなたはMATLABでパラメータ化されたJavaクラスをインスタンス化することはできません。これは、Matlabがインタープリター言語であるためです。したがって、あなたの例では、試してみると
myList = java.util.ArrayList<String>()
このコードはすぐに解釈され、Matlab(およびJavaコードがコンパイルされます)によって実行されます。しかし、JavaはType Erasureなので、myListのすべてのタイプ情報はすぐに失われます。これは、Matlabの文脈型パラメータの意味では意味がないので、構文的に無効です。
私はMatlabの専門家ではありませんが、私はJavaで何かを理解しています。 Java 5の
- ジェネリックはサポートされています。彼らはまた、 "消しゴム"と呼ばれています。
それはあなたのシステムにインストールされ、MATLABで使用されるJavaいる
- チェックを意味します。おそらくそれはJava 1.4を使用するように構成されていますか?
- 他のIDE(matlabではなく)を使ってコードを書いて、コンパイルしてMatlabで使用できますか?おそらくそれはあなたの問題を解決するでしょう。
次のリンクは、おそらくあなたを助けることができる:http://www.mathworks.com/support/solutions/en/data/1-1812J/
2番の点で述べた方法が有効です。 – zellus
Kurtが正しいですが、回避策は、パラメータ化されていない独自のJavaクラスを定義することです。 public class MyList extends ArrayList<String> { }
。その後、matlabでmyList = MyList()
と書くことができ、ほとんどすべてのメソッドシグネチャがArrayList<String>
となります。
- 1. Java汎用クラスからクラスへ
- 2. ObjectDataSourceでの汎用クラスの使用
- 3. 汎用クラスのコンパイルエラー
- 4. Android/JavaでViewHolderを使用する汎用クラス
- 5. 汎用クラスのループスルー子クラス
- 6. WCF汎用クラス
- 7. Javaの汎用メソッド
- 8. Javaの汎用メソッド
- 9. javaの汎用オブジェクト
- 10. 汎用インタフェース - Javaの
- 11. matlabのJavaクラスを使用したクリーニングの問題
- 12. Java汎用コンストラクタ
- 13. リスト要素の汎用クラス
- 14. 2種類の汎用クラス
- 15. C# - Newtonsoft:クライアントレスポンスの汎用クラス
- 16. モデルビューコントローラ...と汎用クラス?
- 17. FluentNHibernateオーバーライド汎用クラス
- 18. javaの汎用型のコンテナ
- 19. 汎用分散スケジューリングライブラリ(Java用)
- 20. 汎用クラスのCUDAキーワードでのテンプレートクラスの使用
- 21. Javaの汎用SOAPクライアント
- 22. Java汎用メソッドの理解
- 23. Java汎用テンプレート・エラー
- 24. MATLABのJava JPAクラス
- 25. Javaを使用したCRUD操作用の汎用Webサービス
- 26. MatlabのプロトコルバッファJavaバインディングの使用
- 27. リフレクトを使用した具体的な汎用クラスのロード
- 28. は汎用Javaのクラスを取得し、ジェネリック医薬品
- 29. Javaのスーパークラスのコンストラクタに拡張汎用クラスの汎用タイプを取得しますか?
- 30. タイプパラメータから汎用クラス
私はそれが事実であることを恐れていましたが、私は確信していました。 – Sam
したがって、私はMatlabでArrayListを構築する場合は、matlabオブジェクトを追加することは可能ですか? (私がオブジェクトを追加しようとするたびに、 'noメソッド 'add'は、クラス 'java.util.ArrayList'に対して一致する署名が見つかりました。) – dinosaur