2026年软件工程师面试问题及答案解析.docxVIP

  • 0
  • 0
  • 约7.18千字
  • 约 24页
  • 2026-11-06 发布于福建
  • 举报

2026年软件工程师面试问题及答案解析.docx

第PAGE页共NUMPAGES页

2026年软件工程师面试问题及答案解析

一、编程语言基础(共5题,每题2分,总分10分)

题目1(Java):

java

publicclassMain{

publicstaticvoidmain(String[]args){

inta=5;

intb=10;

swap(a,b);

System.out.println(a=+a+,b=+b);

}

publicstaticvoidswap(intx,inty){

inttemp=x;

x=y;

y=temp;

}

}

问题:

上述Java代码的输出结果是什么?为什么?如果希望输出`a=10,b=5`,应该如何修改`swap`方法?

答案:

输出结果为`a=5,b=10`。原因是`swap`方法中的参数传递是值传递,仅复制了变量的值,并未改变原对象的引用。因此,`main`方法中的`a`和`b`的值未被实际交换。

若要实现引用传递,可使用数组或对象传递,例如:

java

publicstaticvoidswap(int[]arr){

inttemp=arr[0];

arr[0]=arr[1];

arr[1]=temp;

}

然后在`main`方法中调用:

java

文档评论(0)

1亿VIP精品文档

相关文档