可变参数传入数组

简介: 可变参数传入数组

今天遇到这样一个场景:

   @Override
public void deleteAllById(@Nonnull Iterable<? extends String> strings) {
    stringRedisTemplate.opsForHash().delete(SmCacheConst.STATE_MACHINE, );
}

这里的org.springframework.data.redis.core.HashOperations#delete如下:

Long delete(H key, Object... hashKeys);

那这里我如果直接将Iterable转为数组,能正常运转吗?

也就是说,如果我是:

Object[] array = StreamSupport.stream(strings.spliterator(), false).toArray();
    stringRedisTemplate.opsForHash().delete(SmCacheConst.STATE_MACHINE, array);

那在delete的实现里hashKeys会变成new Object[]{new Object[]{}类型吗

答案是否定的,此处我们传入数组,可变参数运算符会为我们处理,得到的会是一维数组

因此大可以直接转为数组使用

相关文章
|
2月前
|
JavaScript 前端开发
如何在函数中使用解构赋值来处理具有默认值的函数的返回值?
在函数中使用解构赋值来处理具有默认值的函数的返回值,可以使代码更加简洁、清晰,并且能够更好地应对各种可能的返回情况,增强代码的健壮性和可维护性。
114 64
|
2月前
|
存储
如何将数组元素中的函数作为参数传递给其他函数?
通过以上方法,可以灵活地将数组元素中的函数作为参数传递给其他函数,以满足各种不同的编程需求,实现更加强大的功能和更简洁的代码结构。
103 51
|
3月前
|
存储 C语言 C++
如何通过指针作为函数参数来实现函数的返回多个值
在C语言中,可以通过将指针作为函数参数来实现函数返回多个值。调用函数时,传递变量的地址,函数内部通过修改指针所指向的内存来改变原变量的值,从而实现多值返回。
|
5月前
|
程序员 C语言
指针在函数参数和返回值中的使用
指针在函数参数和返回值中的使用
82 9
|
5月前
【函数】数组做函数参数
【函数】数组做函数参数
|
8月前
形式参数和实际参数是什么鬼?
形式参数和实际参数是什么鬼?
85 0
|
编译器 C++
给C++函数形参传入一个C类型的函数指针
给C++函数形参传入一个C类型的函数指针
|
JSON 数据格式
解构(数组,对象,字符串,数值,布尔,函数参数)
解构(数组,对象,字符串,数值,布尔,函数参数)https://es6.ruanyifeng.com/#docs/destructuring
142 0
|
C语言 Android开发 C++
【C++】函数 指针类型参数 与 引用类型参数 对比 ( 修改外部变量需要传入的参数要求 | 参数作返回值 )
【C++】函数 指针类型参数 与 引用类型参数 对比 ( 修改外部变量需要传入的参数要求 | 参数作返回值 )
198 0

热门文章

最新文章