5个回答
展开全部
结果:
sql = select * from test
today
3
一般有疑问的应该是第二个方法的输出结果吧。这就是java面试提中经常遇到的方法参数的值传递与引用传递的问题。
其实String就相当于是char[]的包装类。包装类的特质之一就是在对其值进行操作时会体现出其对应的基本类型的性质。
在参数传递时,包装类就是如此体现的。所以,对于String在这种情况下的展现结果的解释就自然而然得出了。同样的,Integer、Float 等这些包装类和String在这种情况下的表现是相同的。
java的参数传递本质上都可以认为是值传递,对基本类型自然不必说,对于对象类型,传递的是对象的地址,地址是个数字,也是基本类型,所以也还是值传递的。
所以想StringBuilder、List对象作为参数传递的是对象地址,结果显而易见会有所不同。
sql = select * from test
today
3
一般有疑问的应该是第二个方法的输出结果吧。这就是java面试提中经常遇到的方法参数的值传递与引用传递的问题。
其实String就相当于是char[]的包装类。包装类的特质之一就是在对其值进行操作时会体现出其对应的基本类型的性质。
在参数传递时,包装类就是如此体现的。所以,对于String在这种情况下的展现结果的解释就自然而然得出了。同样的,Integer、Float 等这些包装类和String在这种情况下的表现是相同的。
java的参数传递本质上都可以认为是值传递,对基本类型自然不必说,对于对象类型,传递的是对象的地址,地址是个数字,也是基本类型,所以也还是值传递的。
所以想StringBuilder、List对象作为参数传递的是对象地址,结果显而易见会有所不同。
展开全部
sql = select * from test
today
3
我在想,主要容易出错的是那个today吧,String这个类型,需要多理解一下,和StringBuilder是不同的. 在这里把String理解为C系列语言的指针比较好。
today
3
我在想,主要容易出错的是那个today吧,String这个类型,需要多理解一下,和StringBuilder是不同的. 在这里把String理解为C系列语言的指针比较好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from test
today
3
调用addSql1是引用传递
调用addSql2是值传递
调用addParams是引用传递
去了解下java的池吧
today
3
调用addSql1是引用传递
调用addSql2是值传递
调用addParams是引用传递
去了解下java的池吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一句:sql = select * from test 原因:append并没有改变之前定义的字符串
第二句:today is a funny day 原因:相当于对字符串sql重新定义
第三句:params.size=2 list中有三个元素,长度从0开始计数。0,1,2所以应该为2
第二句:today is a funny day 原因:相当于对字符串sql重新定义
第三句:params.size=2 list中有三个元素,长度从0开始计数。0,1,2所以应该为2
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from test
today
3
帮你运行了一下 这是答案 不过我不知道为什么 坐等大神
today
3
帮你运行了一下 这是答案 不过我不知道为什么 坐等大神
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询