Java 如何不丢弃0';s位于通过Integer.parseInt解析的数字的开头

Java 如何不丢弃0';s位于通过Integer.parseInt解析的数字的开头,java,mysql,user-interface,integer,Java,Mysql,User Interface,Integer,所以我基本上有一个数据库,它存储在服务器的外部,我使用JDBC驱动程序连接到该服务器。我有一个GUI,您可以基本上遍历数据库中的每个记录,添加/删除/修改数据。我有一份客户记录清单,他们有护照号码。问题是如果这些数字以0开头,当我搜索passport号码以查看表上的记录时,它不会显示。但是,当我搜索具有护照号码(如891029380)的客户时,将显示此信息。当我创建客户并通过GUI指定其passport编号时,完整的passport编号将存储在数据库中,它将记录以0开头的passport编号。当

所以我基本上有一个数据库,它存储在服务器的外部,我使用JDBC驱动程序连接到该服务器。我有一个GUI,您可以基本上遍历数据库中的每个记录,添加/删除/修改数据。我有一份客户记录清单,他们有护照号码。问题是如果这些数字以0开头,当我搜索passport号码以查看表上的记录时,它不会显示。但是,当我搜索具有护照号码(如891029380)的客户时,将显示此信息。当我创建客户并通过GUI指定其passport编号时,完整的passport编号将存储在数据库中,它将记录以0开头的passport编号。当在JTextField中指定passport号码以搜索特定客户时,是否有可能重写Integer.parseInt方法。它将显示客户与该号码(以0开头的号码)相关的详细信息,而不是不显示

您应该将护照视为字符串,尤其是因为您没有对它们执行操作。要确保文本字段包含数字,可以使用正则表达式:

String text = textField.getText();
boolean isANumber = text.matches("[0-9]*");

您应该将护照视为字符串,尤其是因为您没有对它们执行操作。要确保文本字段包含数字,可以使用正则表达式:

String text = textField.getText();
boolean isANumber = text.matches("[0-9]*");

您应该将护照视为字符串,尤其是因为您没有对它们执行操作。要确保文本字段包含数字,可以使用正则表达式:

String text = textField.getText();
boolean isANumber = text.matches("[0-9]*");

您应该将护照视为字符串,尤其是因为您没有对它们执行操作。要确保文本字段包含数字,可以使用正则表达式:

String text = textField.getText();
boolean isANumber = text.matches("[0-9]*");


如果是文本字符串,为什么要将其解析为int?把它读成一个字符串。也许如果你给我们看一些代码,我们可以帮你更多。原因是我想通过多种方式搜索,问题是如果我将其设置为字符串,那么我将得到NumberFormatException错误,因为搜索和编辑客户详细信息完全取决于该文本字段的值。如果数据库中的值以零开头,我假设您的列是某种类型的varchar,或类似的。这就是数据在代码中的表示方式。很抱歉,我还是不明白。如果文本前面是0,那么这不是一个数字(因为如果处理数字,则001=1),并且无法使Integer.parseInt()使用不同的语义对其进行解析。向我们展示一些代码(在这里解析并使用字段内容)。如果是文本字符串,为什么要将其解析为int?把它读成一个字符串。也许如果你给我们看一些代码,我们可以帮你更多。原因是我想通过多种方式搜索,问题是如果我将其设置为字符串,那么我将得到NumberFormatException错误,因为搜索和编辑客户详细信息完全取决于该文本字段的值。如果数据库中的值以零开头,我假设您的列是某种类型的varchar,或类似的。这就是数据在代码中的表示方式。很抱歉,我还是不明白。如果文本前面是0,那么这不是一个数字(因为如果处理数字,则001=1),并且无法使Integer.parseInt()使用不同的语义对其进行解析。向我们展示一些代码(在这里解析并使用字段内容)。如果是文本字符串,为什么要将其解析为int?把它读成一个字符串。也许如果你给我们看一些代码,我们可以帮你更多。原因是我想通过多种方式搜索,问题是如果我将其设置为字符串,那么我将得到NumberFormatException错误,因为搜索和编辑客户详细信息完全取决于该文本字段的值。如果数据库中的值以零开头,我假设您的列是某种类型的varchar,或类似的。这就是数据在代码中的表示方式。很抱歉,我还是不明白。如果文本前面是0,那么这不是一个数字(因为如果处理数字,则001=1),并且无法使Integer.parseInt()使用不同的语义对其进行解析。向我们展示一些代码(在这里解析并使用字段内容)。如果是文本字符串,为什么要将其解析为int?把它读成一个字符串。也许如果你给我们看一些代码,我们可以帮你更多。原因是我想通过多种方式搜索,问题是如果我将其设置为字符串,那么我将得到NumberFormatException错误,因为搜索和编辑客户详细信息完全取决于该文本字段的值。如果数据库中的值以零开头,我假设您的列是某种类型的varchar,或类似的。这就是数据在代码中的表示方式。很抱歉,我还是不明白。如果文本前面是0,那么这不是一个数字(因为如果处理数字,则001=1),并且无法使Integer.parseInt()使用不同的语义对其进行解析。向我们展示一些代码(您在其中解析并使用字段内容)。他应该在其中一个中实现该正则表达式:他应该在其中一个中实现该正则表达式:他应该在其中一个中实现该正则表达式:他应该在其中一个中实现该正则表达式: