集合、泛型、 重写hashCode和equals、String、StringBuffer、StringBuilder、接口和抽象类、局部变量和全局变量

重写hashCode和equals : 保证对象的唯一性

1、集合

集合大致分为List,Set,Map三种类型
List为一种有序可重复的接口集合
Set为一种无序不重复的接口集合 
Map是采用键值对形式的接口集合

List有序、可为nul1、可重复

a.ArrayList 底层的结构是数组,存取有序,先存先取,优势在于查询效率高
b.LinkedList 底层结构是链表,存取有序,先存先取,优势在于增删效率高
c.vector 底层是数组,查询和增删都慢,同步

Set无序、不重复

a.HashSet 底层结构是哈希表,无序,值不可以重复,可为nu11,存储自定义类型对象的时候,
			需要重写hashSet和equals方法
b.TreeSet 底层结构是二叉树,无序,但可以实现自然排序,存储元素不能为nul1实现自然排序的两种方式
			1.泛型类实现Comparable接口,重写compareTo方法
			2.定义一个类,实现Comparator接口,重写compare方法

Map

双列集合,存在一种键值对的概念,通过键获取对应的值底层结构是哈希表,无序,存储的时候键不能相同,
如果相同则覆盖,允许nu1值nul1键
1.HashMap
2.TreeMap底层结构是红黑树,无序,但可以实现自然排序,按照kev进行排序,不允许nul1键但允许nul1值

2、String、StringBuffer、StringBuilder

String类 字符串类 是一个final修饰的类
     不可变字符串,所有的方法都产生新的String而存在的,不会改变之前的字符串。
StringBuffer类:
     可变字符串,多线程,且线程安全,效率略低,只能使用构造器赋值
StringBuilder
     可变字符串,单线程,线程不安全,效率高,只能使用构造器赋值

3、接口和抽象类

名不同       抽象类属性  接口静态常量
方法:       抽象类可以没有抽象方法      接口只能是抽象方法
抽象类有构造方法  接口没有
类与类单继承,类和接口多实现、接口和接口多继承
子类继承  子实现类

4、局部变量和全局变量

位置
生命周期
局部变量在方法中,全局变量是属性
全局变量属于对象

5、泛型

可以修饰一个类或者方法,
泛型的本质是为了参数化类型
(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。
	也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,
	这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。

6、堆Dog d 栈new Dog(); 常量池

7、Student implements Comparable

if(this.age > o.age) {
            return 1;  //从小到大,返回1参数小,参数往前排
}else if(this.age < o.age) {
            return -1;
}else if(this.age == o.age){
            if(this.name.compareTo(o.name) > 0) {
                return 1;
            }else if(this.name.compareTo(o.name) < 0) {
                return -1;
            }else if(this.name.compareTo(o.name) == 0) {
	return 0;
            }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值