java中容器(顶层容器和中间容器)的布局管理器详解
java容器(顶层容器和中间容器)的布局管理器
Java能够以像素为单位对组件进行精确的定位,但是其在不同的系统中将会有一定的显示差异,使得显示效果不同,为此java提供了布局管理器,使编写的图形界面具有良好的平台无关性。
注意:所有的布局管理器均是针对容器来使用的,包括顶层容器和中间容器。
一、布局管理器所属类包
所属类包 | 布局管理器名称 | 说明 |
---|---|---|
Java.awt | FlowLayout(流式布局) | 组件按照加入的先后顺序按照设置的对齐方式从左向右排列,一行排满到下一行开始继续排列 |
Java.awt | BorderLayout(边界布局) | 容器划分为东、西、南、北、中五个区域,每个区域只能放置一个组件。 |
Java.awt | GridLayout(网格布局) | 容器的空间划分成M×N列的网格区域, 每个区域只能放置一个组件。 |
Java.awt | CardLayout(卡片布局) | 如同一叠牌,每个牌对应一个组件,但每次只能显示其中的一张牌。适用于在一个空间中防止多个组件的情况 |
Java.awt | GridBagLayout(网格包布局) | GridLayout的升级版,组件仍然是按照行、列放置,但是每个组件可以占据多个网格 |
Java.swing | BoxLayout(箱式布局) | 允许在容器中纵向或者横向防止多个控件 |
Java.swing | SprigLayout(弹簧布局) | 根据一组约束条件放置控件 |
无 | 空布局 | 不使用布局管理器,按照控件自身提供的大小、位置信息放置控件 |
二、容器的默认布局管理器
容器 | 默认布局方式 | |
---|---|---|
顶层容器 | JFrame | BorderLayout(边界布局) |
顶层容器 | JDialog | BorderLayout(边界布局) |
顶层容器 | JApplet | FlowLayout(流式布局) |
中间容器 | JPanel | FlowLayout(流式布局) |
java常用的四大容器总结
一、为什么要使用容器(集合类)?
1.需求:某些时候,我们需要在任意时刻和任意位置创建任意数量的对象。
2.数据的缺陷1,具有固定的尺寸,而在实际的使用中我们不好估计自己需要多少的对象。数组的缺陷2,没法支持更加复杂的数据结构。
3.Java中容器的好处就是在于可以自动地调整自己的尺寸大小。在实际的编程中可以往容器中放置任何数量的对象,而不用担心容器应该设置成多大。
4.不同的容器还有其特殊的属性。
二、Java中四大容器的简介与区别
List
:特定顺序保存一组数据。Set
:集合;不允许有重复的数据。Queue
:队列:在一端插入数据,一端弹出数据。Map
:关联数据,字典。存储一组(Key-Value)值。
区别:
List
:可以存储重复数组,基于数组或者链表实现。Set
:不可以存储重复元素,基于Map实现。Map
:键值对方式存储,存储的键的不能重复,基于哈希表或者红黑色实现。
三、Java的容器体系
总体上可以分为两类:
一类是Collection:一个独立元素的序列,另一类是Map:一对键值对的对象。
Collection接口包括List接口、Queue接口、Set接口。其中List接口包括ArrayList类和LinkedList实现类。Queue接口包括Deque接口和PriorityQueue实现类。Set接口包括HashSet实现类,SortedSet接口。
Map接口包括HashMap实现类,TreeHashMap实现类。其中HashMap实现类包括LinkedHashMap子类。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341