声明一个可以在java(Android)中除去可为null的Int或String的方法
据说Java不像C#那样具有可为空的特性。 但我在Android Sdk中看到了许多方法,它们接受“null”作为参数,例如see this method声明一个可以在java(Android)中除去可为null的Int或String的方法,java,android,Java,Android,据说Java不像C#那样具有可为空的特性。 但我在Android Sdk中看到了许多方法,它们接受“null”作为参数,例如see this method SmsManager manager = SmsManager.getDefault(); manager.sendTextMessage("address@example.com", null, "Message body here", null, null); 在上面的sentextmessage方法中,它接受null作为参数,我有一个
SmsManager manager = SmsManager.getDefault();
manager.sendTextMessage("address@example.com", null, "Message body here", null, null);
在上面的sentextmessage
方法中,它接受null
作为参数,我有一个我的方法,它接受String
作为参数,我还想传递null
,在某些情况下,我怎么做?在C#中,我可以做public void methodName(int?param1)
,但在java中如何做。下面是我的方法,它也应该接受null
public boolean update(long rowId,String status_receive,String status_send){/*xyz*/}
update(2,null,"yes") // error Invalid Argument,
我的问题是如何声明一个也可以接受null值的方法?在Java中,任何不是基元类型(int、byte、char等)的东西都可以为null。没有必要也不可能在上面声明任何内容。在Java中,任何非基元类型(int、byte、char等)的内容都可以为null。没有必要也不可能在上面声明任何内容。通常,您会使用
java.lang
包中的包装类-例如Integer
forint
,Long
用于Long
等。自动装箱将在必要时将基本值转换为对象-但请注意,这与.NET可空类型不同,因为它使用完整对象,而不是带有额外标志的值类型。通常,您会在java.lang
包中使用包装类,例如Integer
用于int
,Long
用于Long
等。自动装箱将在必要时将基本值转换为对象-但请注意,这与.NET可空类型不同,因为它使用完整对象,而不是带有额外标志的值类型。无效参数错误不是来自将值null
传递给字符串参数。如果要获取堆栈跟踪,请查看引发无效参数异常的行号。无效参数错误不是由于将值null
传递到字符串参数而产生的。如果获得堆栈跟踪,请查看引发无效参数异常的行号。