Many Vectors, find closest 4 to object

Hello, i have array of Vector3

public Vector3[] positions;

I have object and position of this object stored in Vector3 variable

I have second Vector3 array

public Vector3[] four;

I need to find from array positions 4 closest vectors to the object and put them to the array four . Im thinking how to do it for few hours but i really dont know how. Please give me some ideas(Please in C#).

Here is a method to find the 4 closest. Cast a distance on each of the positions im a forloop and in the same loop figure out if its closer and if it is… Overwrite the previous vector. Make another variable called float fourDistances.

For(int i = 0; i < positions; i++)
{
   float distance = Vector3.Distance(positions*, transform.position);*

bool replacedPrev = false;
If(replacedPrev == false)
{
If(fourDistance[0] < distance)
{
four[0] = positions*;*
fourPositions[0] = distance;
replacedPrev = true;
}

If(fourDistance[1] < distance)
{
four[1] = positions*;*
fourPositions[1] = distance;
replacedPrev = true;
}

If(fourDistance[2] < distance)
{
four[2] = positions*;*
fourPositions[2] = distance;
replacedPrev = true;
}

If(fourDistance[3] < distance)
{
four[3] = positions*;*
fourPositions[3] = distance;
replacedPrev = true;
}
}
}