例えば、私は文字列入力 "int"を持っています、その入力に変数ベースを宣言できますか? (スイッチはチェックしないでください)。
入力文字列からデータ型を示しますか?
String str="int";
new (variable_name,"int");
// intデータ型を使用して新しい変数を作成します。私は、この(擬似コード)または類似のようなものを意味します。
例えば、私は文字列入力 "int"を持っています、その入力に変数ベースを宣言できますか? (スイッチはチェックしないでください)。
入力文字列からデータ型を示しますか?
String str="int";
new (variable_name,"int");
// intデータ型を使用して新しい変数を作成します。私は、この(擬似コード)または類似のようなものを意味します。
実用的ではありませんが、Javaは強く型付けされていません。有用なことを行うには、コンパイル時にすべての変数の型を知っている必要があります。
たとえば、次のようにすることができます。あなたのタイプString
STRの値によって実行時に決定されたObject
Oを与える..which
String str = "java.lang.Integer";
Class clazz = Class.forName(str);
Object o = clazz.newInstance();
。コンパイル時に知っていなければならない実際の型にキャストしなければ、何も役に立ちません。
'Integer'は引数なしのコンストラクタを持っていないので、このコードは投げます。 – Anon
代わりに、プリミティブ型を使用しての、あなたが書かれたように、この
public Object loadClass(String className) {
return Class.forName(className).newInstance(); //this throw some exceptions.
}
をしようとすることができ、オブジェクトベースクラスのcannonical名前を使用する場合、答えは(あなたは、実行時に変数を作成することはできません)なしではありません。しかし、おそらく答えがあります。あなたが解決しようとしている実際の問題は何ですか? – Anon
いいえ、それはちょうど私の実験のJavaで新しいjava.Iの私と私はそれが本当に素晴らしいことがわかった! – Singgum3b