去除可变参数中的一个参数 在String... ids 这个2个参数中有3个值分别是1,2,3 我想买其中的一个参数去除掉怎么做?有人或许会说用list来去除,但是用list去除后怎么把list变成原来的可变参数???可变参数 list 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也没看懂WTF,一定要我输入6个字符 比如说有个方法public void say(String ... ids){}这里的参数从前天获得是1,2,3这时我想把这个ids中的一个参数去掉比如去掉1怎么去掉? String ... ids和String[] ids一样都是数组。在初始化的时候长度已经定了。所以只能新开辟空间,重新定义一个数组,然后再重新赋值。public void say(String ... ids){ String[] newIds = new String[2]; System.arraycopy(ids, 0, newIds, 0, newIds.length); ids = newIds; // TODO} 锁雷写错了应该是System.arraycopy(ids, 1, newIds, 0, newIds.length); 你这样的话不要这么麻烦 用list能直接实现 ,关键问题我去除了可变数组里面的一个参数后最后还是一个可变数组..... 我在说一下我的情景吧。我的客户端有个方法需要的是可变参数public void a(String ...ids){};这个客户端的方法参数无法改变就是参数一要是可变参数,然后前台传来值后后期经过业务逻辑的处理要把这些值中的几个值去掉,就是把可变参数中的某几个值去除,不过最后还是要一个可变参数作为参数给客户端。好比list有remove方法,这个最后删除了某个元素不过最后还是一个list.... 既然叫参数,那就该明白所谓可变只是针对当前参数定义而言。另外纠正一个错误,这不是可变数组,ids在运行时是定长的。所以调用say方法的时候直接把数组传过去就行,无论你传递的参数是有2位还是3位。 JAVA 读取CSV 求助输入输出流的问题 请教:用Java如何实现打印excel文件的功能啊。 copy数据的问题 关于JAVA package的一个基础问题? 高分求解程序设计问题,有点难,请高手们前来帮忙想想办法 请教一个Java的Socket通信程序的调试问题. 我是初学者!想知道现在用得最多最好用的JAVA开发工具!那里有下载!因为我一直用JDK! JBuilder5为什么在win2000下无法安装 java序列化问题(求救,高手在哪里) JAVA IO流的疑惑求解~ 求助一个如何用java模拟小车运行的问题
WTF,一定要我输入6个字符
这里的参数从前天获得是1,2,3这时我想把这个ids中的一个参数去掉比如去掉1怎么去掉?
public void say(String ... ids){
String[] newIds = new String[2];
System.arraycopy(ids, 0, newIds, 0, newIds.length);
ids = newIds;
// TODO
}
这个客户端的方法参数无法改变就是参数一要是可变参数,然后前台传来值后后期经过业务逻辑的处理要把这些值中的几个值去掉,就是把可变参数中的某几个值去除,不过最后还是要一个可变参数作为参数给客户端。好比list有remove方法,这个最后删除了某个元素不过最后还是一个list....
另外纠正一个错误,这不是可变数组,ids在运行时是定长的。所以调用say方法的时候直接把数组传过去就行,无论你传递的参数是有2位还是3位。