对象容器
- 顺序容器
- 记事本的例子
- UI设计和业务逻辑要分离
- 接口设计
- add(String note);
- getSize();
- getNote(int index);
- removeNote(index);
- list();
- 泛型容器类
- 泛型类
- ArrayList
- 一种容器可以无限制的添加
- 容器类
- 容器的类型
- ArrayList
- 元素的类型
- String
- 容器的类型
- ArrayList的操作
- add操作的位置不能脱离现有序列,例如现有序列为0、1,则位置可以为0、1、2,不能为3
- 小练习
1 package com.mieba.notebook; 2 3 import java.util.ArrayList; 4 5 public class NoteBook 6 { 7 8 private ArrayList<String> notes=new ArrayList<String>(); 9
10 public void add(String note)//增加记录 11 { 12 notes.add(note); 13 } 14
15 public void add(String note,int location) 16 { 17 notes.add(location, note); 18 } 19 public int getSize()//记录数 20 { 21 return notes.size(); 22 } 23
24 public String getNote(int index) 25 { 26 return notes.get(index); 27 } 28
29 public void removeNote(int index) 30 { 31 notes.remove(index); 32 } 33
34 public String[] list() 35 { 36 String[] a=new String[notes.size()]; 37 // for (int i = 0; i < notes.size(); i++) 38 // { 39 // a[i]=notes.get(i); 40 // } 41 notes.toArray(a); 42 return a; 43 } 44
45
46
47 public static void main(String[] args) 48 { 49 // TODO Auto-generated method stub 50 NoteBook nb = new NoteBook(); 51 nb.add("first"); 52 nb.add("second"); 53 nb.add("third", 2); 54 System.out.println(nb.getSize()); 55 System.out.println(nb.getNote(0)); 56 System.out.println(nb.getNote(1)); 57 System.out.println(nb.getNote(2)); 58 nb.removeNote(0); 59 System.out.println("移除完毕"); 60 String[] a=nb.list(); 61 for (String s : a) 62 { 63 System.out.println(s); 64 } 65 66 } 67 68 }运行结果
- 记事本的例子