Convert Vector4[] to Quaternion[]

To set an Vector4 Array in a shader I call mat.SetVectorArray("_Vector4Array", vector4Array); in a C# script (It is not possible to set an VectorArray in the shader Properties, it has to be set from a MonoBehavior). This works fine.

Now I want to feed Quaternions in the SetVectorArray() Function. Quaternions have the same structure as a Vector4, but Unity gives me this Error:

cannot convert UnityEngine.Quaternion[]' expression to type System.Collections.Generic.List<UnityEngine.Vector4

I searched for a way to convert a Quaternion in a Vector4 and back, but I didn’t find any answers.

Quaternion quaternionArray = new Quaternion[ vector4Array.Length ] ;
for( int i = 0 i < vector4Array.length ; ++i )
quaternionArray = new Quaternion( vector4Array.x, vector4Array.y, vector4Array_.z, vector4Array*.w ) ;
----
Vector4[] vector4Array = new Quaternion[ quaternionArray.Length ] ;
for( int i = 0 i < quaternionArray.length ; ++i )
vector4Array = new Vector4( quaternionArray.x, quaternionArray.y, quaternionArray.z, quaternionArray.w ) ;
----
Not tested
Quaternion[] quaternionArray = System.Array.ConvertAll( vector4Array, new System.Converter< Vector4, Quaternion>( vector4 => new Quaternion( vector4.x, vector4.y, vector4.z, vector4.w ) ) ;
----*

Not tested
Vector4[] vector4Array = System.Array.ConvertAll( quaternionArray, new System.Converter< Quaternion, Vector4>( q => new Vector4( q.x, q.y, q.z, q.w ) ) ;_