java - 使用另一个 java 文件中的变量

标签 java

我正在尝试制作一个从数据库导入数据并在另一个功能中使用它的应用程序。

我与数据库建立了连接,它返回了一个名为 miejsce 的变量:

public void sprawdzAuto(String nrRej, String miejsce){
     try{
            String query = "select lokalizacja from samochody75 where nrRej=?";
            PreparedStatement pst = con.prepareStatement(query);
            pst.setString(1, nrRej);
            ResultSet rs = pst.executeQuery();
            while (rs.next()) {
                miejsce = rs.getString(1);
                System.out.println(miejsce);

            }


            JOptionPane.showMessageDialog(null, "Znaleziono.");


     } catch(SQLException e) {
         System.out.print(e);
     }
 }

现在,当我得到 miejsce 时,我想在另一个名为 Mapa 的 .java 文件中使用它。

public class Mapa extends MapView{
    private Map map;
    public Mapa(String nName)
    {
        JFrame frame = new JFrame(nName);

        setOnMapReadyHandler(new MapReadyHandler() {
            @Override
            public void onMapReady(MapStatus status) {
                if (status == MapStatus.MAP_STATUS_OK){
                    map=getMap();

                    MapOptions mapOptions = new MapOptions();
                    MapTypeControlOptions controlOptions= new MapTypeControlOptions();
                    mapOptions.setMapTypeControlOptions(controlOptions);

                    map.setOptions(mapOptions);
                    map.setCenter(new LatLng(1,1));
                    map.setZoom(17.0);

                    Marker mark = new Marker(map);
                    mark.setPosition(map.getCenter());
                }
            }
        });

        frame.add(this, BorderLayout.CENTER);
        frame.setSize(700,500);
        frame.setVisible(true);
    }

}

我想要miejsce的结果到map.setCenter(); 我尝试了不同的方法,但没有一个有效。 有什么解决办法可以实现吗?

提前谢谢您。

最佳答案

您似乎误解了很多关于作用域和 Java 一般如何工作的概念。您应该尝试找到 java tutorial 在 StackOverflow 上发布之前。

以下提示可以帮助您解决问题。

  • 您正在迭代 ResultSet这意味着您可能不会只有一个结果。所以当你写miejsce = rs.getString(1);时只有结果集的最后值才会存储在字符串中。

  • Stringimmutable object 。这意味着当您通过 String作为方法的参数,您将无法访问 String 的值来自调用方法除非您从被调用方法返回它。而这不是你在这里所做的。

  • 要完成我之前的两点并部分解决您的问题,您可以查看 List 在Java中。您可以在其中存储对象和值、字符串包含,并且您能够访问列表的内容,这些内容是从被调用的方法填充的(此处为sprawdzAuto),从您的调用方法。

我不会为你编写代码,我认为你自己挖掘一下会更好。

希望这有帮助。

关于java - 使用另一个 java 文件中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59861333/

相关文章:

java - 升级后Spring Boot启动慢

java - 如何向 Firebase 实时数据库中的现有数据添加新属性?

java - 带有 Webflux 的 JDBC - 如何分派(dispatch)到容器线程

java - 如何在JTabbedPane的选项卡栏中添加一个不是选项卡的按钮?

Java找不到类项目的符号

java - 如何将人脸存储在内存中

java - IllegalArgumentException... url 异常中没有 ':'

java - JPA/Hibernate persist 似乎不起作用

java - 如何停止 ksh?

java - 如何在vaadin中定期刷新 View ?