黑马程序员技术交流社区
标题:
如何判断一个实例对象里面的成员属性全部都为空?
[打印本页]
作者:
冯超
时间:
2013-9-26 08:47
标题:
如何判断一个实例对象里面的成员属性全部都为空?
一个简单的user类,里面有属性name和identity。
假如user u = new user();
如何判断这个实例对象所属的字段全部为null。
作者:
wrswuxiaoyan
时间:
2013-9-26 09:06
如果你是request.setAttribute("user",null),那么user对象就为空了。也就不存在了。
如果你是直接写user=null。但并没将user放进request域对象中。那request中的user肯定是存在的。如果你接着写了request.setAttribute("user",user)。意味着你将user=null的这个user重新放进了request.因为属性名都是User。所以将会被替换。request中的user就不存在。为空。无效。
作者:
落木萧萧
时间:
2013-9-26 09:13
User类属性应该有get/set方法么?new一个user,然后判断每个属性的get方法返回值是不是null。
作者:
暮雨
时间:
2013-9-26 10:20
这个就要看你的User类怎么设计了,如果你的User类的name,identity都设计成公共的,那么可以直接用对象取得属性值,想这样 u.name == null 和u.identiry == null 如果都为true的话就为空。
另一种情况,如果你的User类属性都设为私有的,并且提供了getter和setter方法,那么就可以通过对象调用方法的办法进行判断 u.getName() == null 和 u.getidentity() == null
还有
如果对象的属性为没有赋值的bool 属性 初始值为false 且属性永远不会为空,
除非将属性声明为 bool? 可空类型!
因为在 bool 对象 声明是是不能赋值为空值的
比如:
public class Example
{
public bool IsTop { get; set; }
}
class Program
{
static void Main(string[] args)
{
Example e = new Example();
System.Console.WriteLine(e.IsTop);
}
}
输出结果为:False
作者:
冯超
时间:
2013-9-26 10:57
{:soso_e191:}
作者:
欲困
时间:
2013-9-26 11:44
当new一个对象时,这两个对象就已经存在了,然后可以分别取他们的才长度,长度为0时就为空
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2