public ButtonPanel(String title, String... options)
{
}
在上边的构造器中的String... options是什么意思?谢谢各位大侠!
{
}
在上边的构造器中的String... options是什么意思?谢谢各位大侠!
解决方案 »
- 手机 从 Servlet 下载文件 问题!!急
- 内部类和组合在使用中有什么区别?请大家探讨
- 一个关于Swing的问题,求教!
- checkBox velue 为中文,转码问题
- java有没有类似于MSDN的帮助文档呢????
- 如何做到java调用流览器并在出现在最上面?
- 我用javamail做邮件系统用message.getContent()为什么读不出来,答者有分,谢谢!
- java.sql.date按照年月日时分秒转化为啥会有不是00:00:00的时分秒
- Ant 打jar jar里什么都没有
- mybatis 返回结果map中columnPrefix不生效
- java编程思想pk重构-改善既有代码的设计
- MINA粘包消息
//这样应该表示可以有多个参数吧
public ButtonPanel(String title, ...)
{
}
{
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), title));
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
group = new ButtonGroup(); for (String option : options)
{
JRadioButton b = new JRadioButton(option);
b.setActionCommand(option);
add(b);
group.add(b);
b.setSelected(option == options[0]);
}
}程序是这样的,不太清楚String ... 是什么意思
function("a","b","c");没有参数也可以调用
function();可以当做数组来操作,但比数组灵活一点
可变长参数列表。使用的时候可以在title后面放0个或多个参数,每个参数的类型都必须是String。
PS:也可以把需要的参数装进一个String[]放在title后面。觉得不好理解的话LZ可以看下String的format函数,它就传递任意个参数。
比如: String.format("Hello");
String.format("%d\n",1);
String.format("%d,%d\n",1,2);原因就是它有这样一个重载:
String String.format(String format, Object... args);
function("a","b","c");没有参数也可以调用
function();可以当做数组来操作,但比数组灵活一点这个差不多
public ButtonPanel(String title, String... options)
{
//Border应该是你自己定义的一个对象或者属性之类的吧
//BorderFactory是一个工厂
//createTitledBorder工厂里的一个方法
//(BorderFactory.createEtchedBorder(), title));应该是强制类型转换之类的,我忘了
setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), title));
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
group = new ButtonGroup();
//String option : options就是遍历啊,也是循环,只不过是另一种简单的写法而已
for (String option : options)
{
JRadioButton b = new JRadioButton(option);
b.setActionCommand(option);
add(b);
group.add(b);
b.setSelected(option == options[0]);
}
}
String 是类型 option是自己声明的一个变量 options是你自己定义的一个集合
{
}
其中String... options的意思是,该函数可以接收完第一个title后,
还可以接受多个String类型的参数.你调用的时候可以这样,如:
ButtonPanel(new String("aTitle"),new String("str1"),new String("str2"),
new String("str3")),如果愿意,还可以传入更多的参数.
再给楼主举个JDK里的例子,比如java.util里的 类 Arrays,它有个静态方法:asList(T... a),
其中T代表某种类型,你可以这样来创建一个String类型的List:
List<String> strList=Arrays.asList(String("str1"),new String("str2"),
new String("str3")),可以在调用时传进来任多的对象,来构成一个链表.
一个String类型的数组