如何调用UriComponentsBuilder重载的可变参数build方法(传空参数数组)
调用UriComponentsBuilder可变参数build方法(空参数)的更优写法
有两种更简洁的方式可以替代build(new Object[0]),且都能精准匹配到可变参数版本的build(Object... uriVariables)方法:
方式一:传递强制类型转换后的null
直接写build((Object[]) null)。Spring的这个方法内部会将null视为空变量数组处理,和传入new Object[0]的行为完全一致,写法更简洁。方式二:使用空数组字面量
写build(new Object[]{}),相比new Object[0]只是语法上的小差异,可读性稍好一点。
需要注意的是,直接写build(null)虽然也能匹配到可变参数方法(当前没有其他接收单个Object参数的重载),但加上(Object[])强制类型转换会让代码意图更清晰,避免后续如果新增重载方法时出现匹配歧义。
内容的提问来源于stack exchange,提问作者f.khantsis
相关产品推荐
相关产品推荐

