Check if 2 arrays have (exactly) the same elements recursively
Boolean return anti-pattern

It is a very common over-complication beginner make to write:

if (cond) {
    return true;
else {
    return false;
}


When all you need is:

return cond;


So the block:

if (Arr1[0] == Arr2[0]) 
    return true;
else
    return false;


becomes:

return Arr1[0] == Arr2[0];


Never comment when a block closes

Things like:

}//else


are not ok. If you need them to keep track of the code, your code has overly long blocks, and the problem must be fixed at its source.