igo*_*die 1 java casting jframe jcombobox
所以我有这个班级"会员":
package pkgData;
import java.io.Serializable;
public class Member implements Comparable<Member>, Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private String name;
private String city;
public Member(String nameOfMember,String location) {
super();
this.name = nameOfMember;
this.city=location;
}
public String getNameOfMember() {
return name;
}
public String getLocationOfMember() {
return city;
}
public void setNameOfMember(String nameOfMember) {
this.name = nameOfMember;
}
@Override
public String toString() {
return name +", " + city;
}
@Override
public int compareTo(Member o) {
int result =this.getNameOfMember().compareTo(o.getNameOfMember());
if(result==0){
result = this.getLocationOfMember().compareTo(o.getLocationOfMember());
}
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个可编辑的JComboBox,ComboBox的模型是DefaultComboBoxModel.
所以问题是如果我转换selectedItem:
Member nameOfMember = (Member)memberModel.getSelectedItem();
if(nameOfMember== null)
throw new Exception("please select a name and a location");
Run Code Online (Sandbox Code Playgroud)
它仅检查输入的字符串是否为空.如果我输入一个像"Name,Location"这样的字符串,我总是得到一个例外,即String不能转换为Member.我必须输入哪个字符串才能将字符串强制转换为成员?
这是我的JComboBox:
private JComboBox<Member> getComboBoxMember() {
if (comboBoxMember == null) {
comboBoxMember = new JComboBox<Member>();
comboBoxMember.setEditable(true);
comboBoxMember.setModel(memberModel);
}
return comboBoxMember;
}
Run Code Online (Sandbox Code Playgroud)
这里是全局变量:
private DefaultComboBoxModel<Member> memberModel;
private JComboBox<Member> comboBoxMember;
Run Code Online (Sandbox Code Playgroud)
小智 7
String nameOfMember = (String) memberModel
.getSelectedItem();if(nameOfMember==null)throw new Exception("please select a name and a location");else
{
String[] parts = nameOfMember.split(",");
String part1 = parts[0]; // name
String part2 = parts[1]; // location
Member member=new Member(part1, part2);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
180 次 |
| 最近记录: |