如何在 javafx 中声明数组
How to declare array in javafx
我尝试了下面的代码,并且在 while 循环中获取了 "names" 的值,用于组合 box.But 在循环之外,我只从数据库中获取了最后一个值。
@FXML
private void fillcombobox()
{
try
{
String sql = "select * from location";
pst = gc.getConnection().prepareStatement( sql );
rs = pst.executeQuery();
while ( rs.next() )
{
String names = rs.getString( "Address" );
combobox.getItems().add( names );
}
}
catch ( Exception e )
{
System.out.println( "" + e );
}
}
以上代码从 table 位置获取所有值,并获取列 "Address" 中存在的所有值。使用对象名称,我现在使用此代码在组合框中获取值:
combobox.getItems().add(names);
请帮助我在 while 循环之外获取值的可能方法。
String 是单个对象,它只能存储一个值,因此对于每个循环它都会更改值。这就是你获得最后价值的原因。任何 ?s post 评论
@FXML
private void fillcombobox() {
List<String> names=new ArrayList<String>();
try {
String sql = "select * from location";
pst = gc.getConnection().prepareStatement( sql );
rs = pst.executeQuery();
while ( rs.next() )
{
String name = rs.getString( "Address" );
names.add(name );
combobox.getItems().add( names );
}
for(String name:names){
System.out.println(name);
}
}
catch ( Exception e )
{
System.out.println( "" + e );
}
}
我尝试了下面的代码,并且在 while 循环中获取了 "names" 的值,用于组合 box.But 在循环之外,我只从数据库中获取了最后一个值。
@FXML
private void fillcombobox()
{
try
{
String sql = "select * from location";
pst = gc.getConnection().prepareStatement( sql );
rs = pst.executeQuery();
while ( rs.next() )
{
String names = rs.getString( "Address" );
combobox.getItems().add( names );
}
}
catch ( Exception e )
{
System.out.println( "" + e );
}
}
以上代码从 table 位置获取所有值,并获取列 "Address" 中存在的所有值。使用对象名称,我现在使用此代码在组合框中获取值:
combobox.getItems().add(names);
请帮助我在 while 循环之外获取值的可能方法。
String 是单个对象,它只能存储一个值,因此对于每个循环它都会更改值。这就是你获得最后价值的原因。任何 ?s post 评论
@FXML
private void fillcombobox() {
List<String> names=new ArrayList<String>();
try {
String sql = "select * from location";
pst = gc.getConnection().prepareStatement( sql );
rs = pst.executeQuery();
while ( rs.next() )
{
String name = rs.getString( "Address" );
names.add(name );
combobox.getItems().add( names );
}
for(String name:names){
System.out.println(name);
}
}
catch ( Exception e )
{
System.out.println( "" + e );
}
}