java学习笔记(十三)集合框架、用户界面

集合是一种对象,用于存储、检索、传输数据。由一组类和接口组成。

特点:类型可以不同,长度可变,空间不固定。

对象的存储类型:
Set:一般情况下没有顺序,不能重复。
List:有序,有重复对象,实现类通常支持null元素。
Map:键值对,键、值不能重复,单向一对一关系。

ArrayList:以数组方式实现,连续空间,查询效率高。
LinkedList:以链表方式实现,增、删、改效率高。

泛型:允许在定义类,接口时指定类型形式参数。保证在集合中的元素类型安全。

public class ArrayListDemo{
public static void main(String [] args){
List<Integer> li = new ArrayList<Integer>();
//添加
li.add(5);
li.add(new Integer(4));
// li.add("six");
//删除
li.remove(1);//下标表示
//获取元素
for(int i = 0 ; i < li.size() ; i++){
System.out.println(i + " = " + li.get(i));
}
}
}

代码中的"<Integer>"就表示泛型,编译时要把li.add("six")注释掉

工具类:Collections、Arrays这两个类提供了包装器的实现、数据结构算法和数组相关的应用。提供了大量的静态方法,在操作集合和数组时,可以大大减轻程序员编码量、提升开发效率、提高代码性能。

Swing组件是在AWT基础上开发的新型GUI组件。

MVC架构,将表示层分为3个分类的部分:模型(存)、视图(显)、控制器(处理)。

Swing视图由容器和组件组成,容器是一种设计用来放置其他组件的特殊类型的组件。

组件:内容、外观显示、行为。

重量级组件:Jframe(窗体)、Jdialog(对话框)、Jwindow(窗口)、Japplet(小程序)
轻量级组件:Jpanel(面板)、JSplitPane(分隔窗格)、JScrollPane(滚动窗格)、JTabbledPane(标签窗格)、JRootPane(工具条)以及一些专用的容器。

布局管理器:
流式布局管理器(从左到右),JPanel组件默认采用这个布局管理器
边框布局管理器(东南西北中),JFrame默认采用这个布局管理器
网格布局管理器(行和列)
盒式布局管理器(垂直或水平)
卡片布局管理器、网格包布局管理器、层叠布局管理器

JMenuBar菜单条、JMenu菜单、 Jmenu Item子菜单

AWT Swing
粗糙不美观 更方便、丰富的用户界面元素集合
平台不一致 对底层平台的依赖更少,和平台有关的bug就越少
运行效率较低,不适合复杂程序 给用户不一样的平台一样的感觉
开发效率较低 没有对等组件

import javax.swing.JFrame;

public class Login extends JFrame {
public Login(){
//标题
setTitle("登录");
//窗体大小
setSize(200,300);
//窗体关闭
setDefaultCloseOperation(EXIT_ON_CLOSE);
//窗体居中
setLocationRelativeTo(null);
//窗体可见
setVisible(true);
}
public static void main(String [] args){
//实例化一个对象
new Login();
}
}

时间: 2024-08-05 12:26:48

java学习笔记(十三)集合框架、用户界面的相关文章

【Java学习笔记】集合框架Ⅱ

迭代 ●迭代是取出集合中元素的一种方式. ●因为Collection中有iterator方法,所以每一个子类集合对象都具备迭代器. ●用法: 第一种 for (iterator iter=iterator(); iter.hasNext();) //老外比较喜欢用这种,省内存(iter的内存),开发时用这个 { System.out.println(iter.next()); } 第二种 Iterator iter = l.iterator(); while(iter.hasNext()) {

【Java学习笔记】集合框架Ⅰ

集合类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定. 就使用集合容器进行存储. 集合特点: 1.用于存储对象的容器. 2.集合的长度是可变的. 3.集合中不可以存储基本数据类型值. 集合容器因为内部的数据结构不同,有多种具体容器,不断向上抽取,就形成了集合框架. 框架的顶层是Collection接口. Collection的常见方法: 1.添加 boolean  add(Object obj); boolean  addAll(Collection coll); 2.删

【Java学习笔记】&lt;集合框架&gt;Iterator的子接口ListIterator

1 import java.util.ArrayList; 2 import java.util.Iterator; 3 import java.util.List; 4 5 public class Test3 { 6 7 public static void main(String[] args) { 8 List list = new ArrayList(); 9 10 list.add("abc1"); 11 list.add("abc2"); 12 lis

【Java学习笔记】&lt;集合框架&gt;对字符串进行长度排序

1 package 测试; 2 3 import java.util.Comparator; 4 5 public class ComparatorByLength implements Comparator { //定义比较器 6 7 @Override 8 public int compare(Object o1, Object o2) { 9 String s1 = (String)o1; 10 String s2 = (String)o2; 11 12 int temp = s1.len

【Java学习笔记】&lt;集合框架&gt;TreeSet,Comparable,Comparator

1 public class Person implements Comparable{ 2 private String name; 3 private int age; 4 5 public Person(){ 6 super(); 7 } 8 public Person(String name, int age) 9 { 10 super(); 11 this.name = name; 12 this.age = age; 13 } 14 15 16 @Override 17 public

【Java学习笔记】&lt;集合框架&gt;使用LinkedList来模拟一个堆栈或者队列的数据结构

1 import java.util.LinkedList; 2 3 public class Test5 { 4 5 public static void main(String[] args) { 6 7 Duilie dl = new Duilie(); 8 9 dl.myAdd("abc1"); 10 dl.myAdd("abc2"); 11 dl.myAdd("abc3"); 12 dl.myAdd("abc4");

黑马程序员——JAVA学习笔记八(集合)

1,    JAVA最初版本只为最常用的数据结构提供了很少的一组类:Vector.Stack.Hashtable.BitSet与Enumeration接口,从JAVA1.2版本开始推出了一组功能完善的的数据结构. 集合类的由来:  对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定.  就使用集合容器进行存储. 集合特点: 1,用于存储对象的容器. 2,集合的长度是可变的. 3,集合中不可以存储基本数据类型值. 4,接口与实现相互分离. 集合框架是为表示和操作集合而规定的一种统一的标准

Java基础学习笔记十七 集合框架(三)之Map

Map接口 通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图. Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储. Map中的集合,元素是成对存在的(理解为夫妻).每个元素由键与值两部分组成,通过键可以找对所对应的值. Collection中的集合称为单列集合,Map中的集合称为双列集合. 需要注意的是,Map中的集合不能包含重复的键,值可以重复:每个键只能对应一个值. Map中

【原】Java学习笔记026 - 集合

1 package cn.temptation; 2 3 public class Sample01 { 4 public static void main(String[] args) { 5 // 需求:从三国演义中评选出四个最帅的武将,并存储下来 6 7 // 因为具备了面向对象的思想,所以创建四个对象来存储 8 Hero hero1 = new Hero("张飞", 18); 9 Hero hero2 = new Hero("赵云", 16); 10 Her

我的java学习笔记(21)关于框架定位

1.AWT和Swing中框架和组件类的继承层次. 2.组件类的很多方法是以获取或设置方法对形式出现的. public String getTitle(); public void setTitle(Stirng title); 3.对于类型为boolean的属性,获取方法由is开头. public boolean isLocationByPlatform(); public void setLocationByPlatform(boolean b); 4.如果没有明确地指出指定框架的大小,所有框