当前位置: 首页 > 面试题库 >

怎么把Integer转换成int?

林冥夜
2023-03-14
问题内容

我正在开发一个Web应用程序,其中将在客户端和服务器端之间传输数据。

我已经知道JavaScript int!= Java int。因为,Java int不能为null,对。现在这是我面临的问题。

我将Java int变量更改为Integer。

public void aouEmployee(Employee employee) throws SQLException, ClassNotFoundException
{
   Integer tempID = employee.getId();
   String tname = employee.getName();
   Integer tage = employee.getAge();
   String tdept = employee.getDept();
   PreparedStatement pstmt;
   Class.forName("com.mysql.jdbc.Driver");
   String url ="jdbc:mysql://localhost:3306/general";
   java.sql.Connection con = DriverManager.getConnection(url,"root", "1234");
   System.out.println("URL: " + url);
   System.out.println("Connection: " + con);
   pstmt = (PreparedStatement) con.prepareStatement("REPLACE INTO PERSON SET ID=?, NAME=?, AGE=?, DEPT=?");
   pstmt.setInt(1, tempID);
   pstmt.setString(2, tname);
   pstmt.setInt(3, tage);
   pstmt.setString(4, tdept);
   pstmt.executeUpdate();
 }

我的问题在这里:

pstmt.setInt(1, tempID);

pstmt.setInt(3, tage);

我不能在这里使用Integer变量。我尝试过,intgerObject.intValue(); 但这会使事情变得更复杂。我们还有其他
转换方法或转换技术吗?

任何修复都会更好。


问题答案:

如其他地方所写:

  • 对于Java 1.5及更高版本,您不需要做(几乎)任何事情,它是由编译器完成的。
  • 对于Java 1.4及更低版本,请使用Integer.intValue()从Integer转换为int。

但是正如您所写,an
Integer可以为null,因此明智的做法是先进行检查,然后再尝试转换为int(否则可能会获得NullPointerException)。

pstmt.setInt(1, (tempID != null ? tempID : 0));  // Java 1.5 or later

要么

pstmt.setInt(1, (tempID != null ? tempID.intValue() : 0));  // any version, no autoboxing
  • 使用默认值零,也可能不执行任何操作,显示警告或…

我最喜欢不使用自动装箱(第二个示例行),因此很清楚我想做什么。



 类似资料:
  • 问题内容: 我有一个WSDL文件,我需要将其转换为Java,为此,我使用下面链接中的分步过程 http://axis.apache.org/axis2/java/core/tools/eclipse/wsdl2java- plugin.html 就像将axis2 codegen jar文件添加到eclipse文件夹中的dropins文件夹中并重新启动eclipse一样,但是我在eclipse ID

  • 问题内容: 如果我有: 我需要 PHP是否为此提供功能? 问题答案: 尝试以下尺寸: 输出: 这实现了以下规则: 以小写字母开头的序列后必须跟小写字母和数字; 以大写字母开头的序列后面可以是: 一个或多个大写字母和数字(后跟字符串的结尾或大写字母,后跟小写字母或数字,即下一个序列的开头);要么 一个或多个小写字母或数字。

  • 问题内容: 我有一个相当于毫秒的字符串。我尝试使用哪个给出毫秒,包括当前日期。我只需要String表示形式到毫秒。我是否必须编写自定义方法,该方法将拆分并计算毫秒?还是有其他方法可以做到这一点?谢谢。 我尝试如下: 问题答案: 您可以用来做。您只需要知道两件事。 所有日期均以UTC内部表示 返回自1970-01-01 00:00:00 UTC以来的毫秒数。

  • 问题内容: 我有一个表格来说明事件的持续时间。说,活动将持续15分钟。因此该字段将具有以下值:00:15如果要持续1小时:01:00,依此类推。 如何创建带有字符串“ HH:MM” 的Joda时间 持续时间对象? 在Joda-Time主页上,它提到可以分别使用ConverterManager和DurationConverter从指定对象创建Duration对象。 我的问题是,如何实现上述接口,以便

  • 问题内容: 我正在尝试在数据库中设置服务器不可知日期时间,并且我相信这样做的最佳做法是设置UTC DateTime。我的数据库服务器是Cassandra,Java的数据库驱动程序仅理解Date类型。 因此,假设在我的代码中我正在使用新的Java 8 ZonedDateTime立即获取UTC(),如何将ZonedDateTime实例转换为“旧版” Date类? 问题答案: 您可以将ZonedDate

  • 问题内容: 我试图在执行更多计算之前将TimeZone信息简单地添加回LocalDate中。LocalDate来自使用ObjectLab LocalDateCalculator将天数添加到现有DateTime中,但是该方法需要返回修改后的ReadableInstant来形成一个Interval,然后可以检查该Interval。 我正在尝试的代码相当于将Joda LocalDate转换为Joda D