Java常见笔试面试题目深度剖析系列之:Java方法参数传递详解

  
  
  
  
  1. package com.test;  
  2.  
  3. class ParamTest {  
  4.  
  5. public void changeInt(int i) {  
  6. i = 2;  
  7. }  
  8.  
  9. public void changeString(String str) {  
  10. str = "xyz";  
  11. }  
  12.  
  13. public void changePoint(Point point) {  
  14. point.x = 5;  
  15. point.y = 6;  
  16. }  
  17.  
  18. public void change(char c, char[] ch) {  
  19. c = 'A';  
  20. ch[0] = 'B';  
  21. }  
  22.  
  23. public static void main(String[] args) {  
  24. ParamTest test = new ParamTest();  
  25.  
  26. int i = 1;  
  27. test.changeInt(i);  
  28. System.out.println("changeInt=" + i);  
  29.  
  30. String s = "abc";  
  31. test.changeString(s);  
  32. System.out.println("changeString=" + s);  
  33.  
  34. Point point = new Point(1, 2);  
  35. test.changePoint(point);  
  36. System.out.println("changePoint-->x=" + point.x);  
  37. System.out.println("changePoint-->y=" + point.y);  
  38.  
  39. char c = 'C';  
  40. char ch[] = new char[] { 'O''P''Q' };  
  41. test.change(c, ch);  
  42. System.out.println("change-->c=" + c);  
  43. System.out.println("change-->ch[0]=" + ch[0]);  
  44.  
  45. }  
  46.  
  47. }  
  48.  
  49. class Point {  
  50. int x;  
  51. int y;  
  52.  
  53. public Point(int x, int y) {  
  54. this.x = x;  
  55. this.y = y;  
  56. }  


结果:

changeInt=1
changeString=abc
changePoint-->x=5
changePoint-->y=6
change-->c=C
change-->ch[0]=B

你可能感兴趣的:(java,参数,面试,剖析,详解)