I was trying to use this code I made to reverse a array. I don't understand why I was getting [I@7a84639c as my output in my console. 
And for some reason why doesn't this method actually save my reversed array into the array? If i add a print at the bottom of x[i]=c[i]; it shows the array reversed but when i add a call for example karn[0] it shows that my array isn't actually reversed.  I want to solve this by staying true to the code i made.
import java.util.Arrays;
public class HelloWorld {
  public static void main(String[] args) {
    int[]karn={1,2,3};
    rev(karn);
    System.out.println(karn.toString());
  }
  public static void rev(int[]x){
    int[]c=new int[x.length];
    for(int i=x.length-1;i>-1;i--){
      c[i]=x[i];
      x[i]=c[i];
    }
  }
}
 
     
    