为了账号安全,请及时绑定邮箱和手机立即绑定

用户名空指针

为什么在提交用户名的时候不用考虑空指针的问题?

正在回答

3 回答

可以自己在业务逻辑里进行条件判断的完善

0 回复 有任何疑惑可以回复我~
#1

qq_海星_0 提问者

非常感谢!
2017-01-31 回复 有任何疑惑可以回复我~

简单点说,就是text控件和checkbox控件不同,text控件不输入任何内容,他的实例已经存在,是为null的字符串;checkbox如果不勾选,就连实例都没有创建,所以get参数是get不到值的,对象都没有,你要我问谁要钱?

再加上java代码延伸理解:

public static void main(String[] args)throws Exception{
    //字符串、字符串数组本身是对象,对象就涉及到实例化的概念,就是没有创建对象,就没有实例化;
    //如果对象根本都不存在,何来的赋值?
    //如果新建对象了,我们才能谈初始化,初始化就是给该对象赋值
    String s = "";//新建对象字符串s,(初始化)赋值为空
    String[] ss ={};//新建字符串数组对象ss,(初始化)赋值为空
    
    system.out.println("默认值为:"+s);
    system.out.println("默认值为:"+ss);
    
    /*以下为错误代码,就是checkbox连字符串数组的对象都没有创建,输出他就会报语法错误
        String[] ss ;
        system.out.print("ss");//报错,语法错误
    */
}

checkbox如果没勾选,就没有实例化对象,哪来的值,所以才报空指针。而text框,默认就是空值的字符串对象,有对象, 值为空,能取到。

1 回复 有任何疑惑可以回复我~

在用户名这一栏,不输入东西,取到的参数为空白的字符串,但是是实例化的,有该字符串对象存在,所以输出的时候,是不会报空指针,但是会显示字符串为空(白)

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JAVA遇见HTML——JSP篇
  • 参与学习       248278    人
  • 解答问题       3071    个

Java Web入门级教程JSP,带你轻松的学习JSP基础知识

进入课程

用户名空指针

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信