黑马程序员-集合的总结

------- android培训java培训、期待与您交流! ----------

Collection
|--List
|--ArrayList
底层数据结构是数组,查询快,增删慢。
线程不安全,效率高。
|--LinkedList
底层数据结构是链表,查询慢,增删快。
线程不安全,效率高。
|--Vector
底层数据结构是数组,查询快,增删慢。
线程安全,效率低。
|--Set
|--HashSet
底层数据结构是哈希表。
如何保证唯一性呢?
依赖两个方法:hashCode()和equals()
|--LinkedHashSet
底层数据结构是链表和哈希表。
有序,唯一。
|--TreeSet
底层数据结构是二叉树。
如何保证唯一性呢? 根据比较性的返回值是否是0.
两种方案:同时还可以进行排序。
元素具备比较性 Comparable
集合具备比较性 Comparator
Map
|--HashMap
底层数据结构是哈希表。对键有效。
如何保证唯一性呢?
依赖两个方法:hashCode()和equals()
|--LinkedHashMap
底层数据结构是链表和哈希表。
键 有序,唯一。
|--Hashtable
底层数据结构是哈希表。对键有效。线程安全的。
如何保证唯一性呢?
依赖两个方法:hashCode()和equals()
|--TreeMap
底层数据结构是二叉树。对键有效。
如何保证唯一性呢? 根据比较性的返回值是否是0.
两种方案:同时还可以进行排序。
元素具备比较性 Comparable
集合具备比较性 Comparator


3:集合的使用总结
考虑是否有键值对映射关系:
是:Map
是否要对键排序:
是:TreeMap
否:HashMap

不知道用谁,就用HashMap


否:Collection
元素是否唯一:
是:Set
元素是否需要排序:
是:TreeSet
否:HashSet
不知道用谁,就用HashSet
否:List
元素是否线程安全
是:Vector 也不用它。用Collections.synchronizedList(...)
否:ArrayList,LinkedList
查询多:ArrayList
增删多:LinkedList
不知道用谁,就用ArrayList
不知道用谁,就用ArrayList


4:集合的遍历方式
Collection
|--List
方式1:迭代器
方式2:增强for
方式3:普通for


如果需要索引,用普通for。否则就用增强for。
|--Set
方式1:迭代器
方式2:增强for
Map:
不能直接遍历,需要通过Set执行。


方式1:键值找值
方式2:通过映射关系找键值和值

5:可变参数
(1)参数个数不固定。
(2)格式:
修饰符 返回值类型 函数名(数据类型... 变量名)
{

}


注意:
这个变量其实是一个数组。
如果一个函数有多个参数,可变参数只能放在最后边。
(3)举例:
public static int sum(int... x)
{
int result = 0;


for(int i : x)
{
result+=i;
}


return result;
}


6:Arrays工具类的使用
(1)对数组进行操作的工具类
(2)要掌握的功能:
A:toString()
B:sort()
C:binarySearch()
(3)把数组变成集合的功能
asList(T... t)


注意:把数组转成集合后不能添加和删除。但是可以修改。


7:Collections工具类的使用
(1)对Collection集合进行操作的工具类
(2)Collection和Collections的区别
前者是集合的顶层接口,里面定义了集合的常见功能。
后者是对集合操作的工具类,里面定义了排序,查找等功能。
(3)需要了解
A:排序
B:查找
C:最大值
D:反转
E:随机置换

------- android培训java培训、期待与您交流! ----------

基于径向基函数神经网络RBFNN的自适应滑模控制学习(Matlab代码实现)内容概要:本文介绍了基于径向基函数神经网络(RBFNN)的自适应滑模控制方法,并提供了相应的Matlab代码实现。该方法结合了RBF神经网络的非线性逼近能力和滑模控制的强鲁棒性,用于解决复杂系统的控制问题,尤其适用于存在不确定性和外部干扰的动态系统。文中详细阐述了控制算法的设计思路、RBFNN的结构与权重更新机制、滑模面的构建以及自适应律的推导过程,并通过Matlab仿真验证了所提方法的有效性和稳定性。此外,文档还列举了大量相关的科研方向和技术应用,涵盖智能优化算法、机器学习、电力系统、路径规划等多个领域,展示了该技术的广泛应用前景。; 适合人群:具备一定自动控制理论基础和Matlab编程能力的研究生、科研人员及工程技术人员,特别是从事智能控制、非线性系统控制及相关领域的研究人员; 使用场景及目标:①学习和掌握RBF神经网络与滑模控制相结合的自适应控制策略设计方法;②应用于电机控制、机器人轨迹跟踪、电力电子系统等存在模型不确定性或外界扰动的实际控制系统中,提升控制精度与鲁棒性; 阅读建议:建议读者结合提供的Matlab代码进行仿真实践,深入理解算法实现细节,同时可参考文中提及的相关技术方向拓展研究思路,注重理论分析与仿真验证相结合。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值