鱼C论坛

 找回密码
 立即注册
查看: 2778|回复: 0

[学习笔记] JAVA笔记 顺序对象容器

[复制链接]
发表于 2017-8-11 18:58:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 可爱的静静 于 2017-8-13 18:32 编辑

对象容器(顺序容器)ArrayList
例子:记事本
思路:1.先构思记事本有什么功能
2然后把功能用方法表示出来
3补充方法里的方法体

假设一个记事本的功能有:
1 能存储记录
2 不限制能存储的数量
3能查看存进去的每一条记录
4能删除一条记录
5能列出所有的记录

所以方法有:
1 add(String note);
2 grtSize();
3 getNote(intdex);
4 list();
-----------------------构思--------------------------
//先定义好接口
  1. package UI;

  2. public class NoteBook {

  3.         public void add(String note){
  4.                
  5.         }
  6.         public int getSize(){
  7.                
  8.                 return 0;
  9.         }
  10.         public String getNote(int index){
  11.                 return "";
  12.         }
  13.         public void removeNote(int index){
  14.                
  15.         }
  16.         public static void main(String[] args) {
  17.                 // TODO Auto-generated method stub

  18.         }

  19. }
复制代码
------------------补充接口内容-------------
因为笔记本输入的内容是不断可以增加而且内容是不同类型的
如果用二位数组 并不能 因为不断的放东西
这时候用ArrayList
ArrayList :
返回类型   方法                      说明
Bollean      add()                    列表末尾开始添加 ,从0开始
Int              size()                    返回列表元素个数
Object        get(index)           返回指定位置的元素
Boolean     contain(Object o)判断列表中是否存在指定的元素
Boolean     remove()             从列表中删除元素
注意:
1索引从0开始
2可以存放不同数据可以不断增加

例子:
  1. package UI;

  2. import java.util.ArrayList;
  3. import java.util.Scanner;
  4. public class NoteBook {
  5.        
  6.         private ArrayList<String> notes=new ArrayList<String>();
  7.        
  8.         public void add(String s){
  9.                 notes.add(s);
  10.                
  11.         }
  12.         public int getSize(){
  13.                
  14.                 return notes.size();
  15.         }
  16.         public String getNote(int index){
  17.                 return notes.get(index);
  18.         }
  19.         public void removeNote(int index){
  20.                 notes.remove(index);
  21.                
  22.         }
  23.         public String [] list(){
  24.                 int size=notes.size();
  25.                 String[] b=new String[notes.size()];
  26.                 for(int i=0; i<size;i++){
  27.                         b[i]=notes.get(i);
  28.                 }
  29.                 return b;
  30.                        
  31.         }
  32.         public static void main(String[] args) {
  33.                 // TODO Auto-generated method stub
  34.                 NoteBook notebook=new NoteBook();
  35.                 Scanner in=new Scanner(System.in);
  36.                 notebook.add(in.next());
  37.                 notebook.add(in.next());
  38.                 notebook.add(in.next());
  39.                 System.out.println(notebook.getNote(1));
  40.                 notebook.removeNote(1);
  41.                 String a[]=notebook.list();
  42.                 for(int i=0;i<notebook.getSize();i++)
  43.                 System.out.println(a[i]);
  44.                
  45.         }

  46. }
复制代码




容器类型有两种:
容器的类型
元素的类型
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-17 01:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表