千禧难题之二:
霍奇猜想:在非奇异复射影代数簇上, 任一霍奇类是代数闭链类的有理线性组合。它是关于非奇异复代数簇的代数拓扑和它由定义子簇的多项式方程所表述的几何的关联的猜想。由威廉·瓦伦斯·道格拉斯·霍奇于1958年提出,但至今对霍奇猜想的研究进展几乎为0,而唯一有突破是由美国数学家莱夫谢茨于1925年(先于霍奇猜想提出)证明了霍奇猜想的一种情况。用通俗的话来说,就是任何一个形状的几何图形,不管它有多复杂,都可以用一堆简单的几何图形拼接。
前言
本周我们来学习Java内置包装类,虽然Java可以直接处理基本类型,但是在有些情况下需要将其作为对象来处理,这时就需要将其转换为包装类。本章我们就来学习Java提供的各种包装类。
一、Java内置包装类
一、Java内置包装类
Java 是一种面向对象的编程语言,Java中的类把方法与数据类型连接在一起,构成了自包含式的处理单元。但在Java中不能定义基本类型对象,为了能将基本类型视为对象处理,并能连接相关方法,Java为每个基本类型都提供了包装类,如int型数值的包装类 Integerboolean型数值的包装类Boolean等。这样便可以把这些基本类型转换为对象来处理了。Java为每种基本数据类型分别设计了对应的类,称之为包装类。下面是它们之间的对应图:
二、基本类型与包装类型的区别:
一、基本类型与包装类型的区别:
1、在Java中,一切皆对象,但八大基本类型却不是对象。
2、声明方式的不同,基本类型无需通过new关键字来创建,而封装类型则需new关键字。
3、存储方式及位置的不同,基本类型是直接存储变量的值,保存在堆栈中能高效的存取;封装类型需要通过引用指向实例,具体的实例保存在堆中;
4、初始值的不同,封装类型的初始值为null,基本类型的的初始值视具体的类型而定,比如int类型的初始值为0,boolean类型为false;
5、使用方式的不同,比如与集合类合作使用时只能使用包装类型。
6、什么时候该用包装类,什么时候该用基本类型,看基本的业务来定:这个字段允不允许null值,如果允许,则必然要用封装类;否则,基本类型就可以了。如果用到比如泛型(把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊的类型),就需要用包装类!
XX
三、包装类的装箱和拆箱
装箱:即将基本数据类型转换为包装类的过程。
拆箱:将包装类变为基本数据类型的过程。
下面我们通过一个简单的例子来看一下装箱和拆箱的过程:
class Rextester {
public static void main(String[] args) {
int m = 99;
Integer obj = m; // 将m装箱
int n = obj; // 拆箱
System.out.println("n = " + n);
Integer num = 99;
System.out.println("obj等价于num返回结果为" + obj.equals(num));
}
}
结语
今天的内容较少,我们下周再来继续学习包装类的应用。由于小编的电脑出了故障,所以编程都是用的线上编程工具,下面是上周的习题参考答案,线上编程系统的交互性不是很好,不能在程序运行过程中传入参数,所以我直接给定值,处理比较粗糙,还望大家见谅,那么我们下期再会~
编辑:玥怡居士|审核:世外居士