の形式の有効なArrayList
オブジェクトがありjava.lang.Object
ます。を に再度変換するObject
必要がありArrayList
ます。私はこれを試しました:
オブジェクト obj2 = あるソースから。. ; ArrayList al1 = new ArrayList(); al1 = (ArrayList) obj2; System.out.println("List2 値: "+al1);
しかし、それは印刷していnull
ます。これどうやってするの?
オブジェクトが有効な List オブジェクトであると仮定すると、以下を使用できます。Collections.singletonList(object)
-- 指定されたオブジェクトのみを含む不変リストを返します。
List<Object> list = Collections.singletonList(object);
特定のデータ型でそれが必要な場合は、次を使用しますStream.of(object)
。
List<String> list = Stream.of(object).map(Object::toString).collect(Collectors.toList())
同様に、マップ内のメソッドを変更して、必要なデータ型に変換できます。
むしろオブジェクト配列にキャストしてください。
Object obj2 = from some source . . ;
Object[] objects=(Object[])obj2;
変換は失敗します ( java.lang.ClassCastException: java.lang.String を java.util.ArrayList にキャストできません)。これは、 ArrayListではないオブジェクトがいくつかあるためです。さまざまなオブジェクトのタイプを確認します。