MATLAB: Replacing a vector elemnts from another vector of the same size

MATLAB

Hello
Im trying to replace some values in one vector to values from another vector in the same location
let says this is my vector:
5
3
8
2
3
and i have this vector
99
0
23
0
0
I want to replace zeros in the second vector to be like this
99
3
23
2
3
Are there any effiecient way to do that
Many thanks

Best Answer

mask = second_vector == 0;
second_vector(mask) = first_vector(mask);