Java系列文章目录
文章目录
- Java系列文章目录
- 一、前言
- 二、学习内容:
- 三、问题描述
- 四、解决方案:
- 4.1 空值与null的区别
- 4.1.1 空值(Empty Value)
- 4.1.2 Null
- 4.2 形参与实参区别
- 五、总结:
- 5.1 学习总结:
一、前言
- 学习null与空值的区别
- 学习形参与实参
二、学习内容:
- null与空值
三、问题描述
- 形参实参混淆
- null与空值混淆
四、解决方案:
4.1 空值与null的区别
4.1.1 空值(Empty Value)
定义: 空值通常指的是一个有效的值,但这个值是不包含任何内容。例如,在字符串上下文中,空字符串 “” 表示一个长度为零的字符串。
表现形式:
- 在很多编程语言中,空值可以用 “”(空字符串)、0(数字零)或其他类型的空对象(如空数组 [])表示。
数据类型:
- 空值通常属于特定的数据类型(比如空字符串属于字符串类型)。
4.1.2 Null
定义: Null 是一个特殊的标记,表示没有值或缺失的值。它表示“没有任何对象”或“未知的值”。
表现形式:
- null 是一个关键字,例如 JavaScript、Java 和 Python(使用 None 表示)。
数据类型:
- Null 通常不是特定类型的值,而是一种状态,强调变量没有被初始化或没有具体的值。
应用场景
- 空值可用于表示清空的状态,例如用户输入未填充的字段,但仍然该字段存在。
- Null常用于检查变量是否已初始化或特定字段是否存在,尤其在数据库和数据结构中很常见。
例子
let str = ""; // 空字符串
let obj = null; // Null值
4.2 形参与实参区别
- 值传递: 形参的改变不会影响实参。
- 引用传递: 形参的改变可能会影响实参,但这通常只适用于可变对象。
Java实际上是值传递,但对于引用类型(对象),实参的引用被传递,形参可以通过引用修改对象的内容,但如果形参重新指向一个新的对象,实参不会受到影响
五、总结:
5.1 学习总结:
-
空值是不含内容的有效值
-
null是未初始化的一种状态
-
形参如果采用值传递,变化不会影响实参;
-
如果采用引用传递且实参是可变对象,变化可能会影响实参。
(后续有遇到问题再添加)
声明:如本内容中存在错误或不准确之处,欢迎指正。转载时请注明原作者信息(麻辣香蝈蝈)。