Java进阶学习(3)之对象容器(上)
对象容器
- 顺序容器
- 记事本的例子
- UI设计和业务逻辑要分离
- 接口设计
- add(String note);
- getSize();
- getNote(int index);
- removeNote(index);
- list();
- 泛型容器类
- 泛型类
- ArrayList
- 一种容器可以无限制的添加
- 容器类
- 容器的类型
- ArrayList
- 元素的类型
- String
- 容器的类型
- ArrayList的操作
- add操作的位置不能脱离现有序列,例如现有序列为0、1,则位置可以为0、1、2,不能为3
- 小练习
-
package com.mieba.notebook; import java.util.ArrayList; public class NoteBook
{ private ArrayList<String> notes=new ArrayList<String>(); public void add(String note)//增加记录
{
notes.add(note);
} public void add(String note,int location)
{
notes.add(location, note);
}
public int getSize()//记录数
{
return notes.size();
} public String getNote(int index)
{
return notes.get(index);
} public void removeNote(int index)
{
notes.remove(index);
} public String[] list()
{
String[] a=new String[notes.size()];
// for (int i = 0; i < notes.size(); i++)
// {
// a[i]=notes.get(i);
// }
notes.toArray(a);
return a;
} public static void main(String[] args)
{
// TODO Auto-generated method stub
NoteBook nb = new NoteBook();
nb.add("first");
nb.add("second");
nb.add("third", 2);
System.out.println(nb.getSize());
System.out.println(nb.getNote(0));
System.out.println(nb.getNote(1));
System.out.println(nb.getNote(2));
nb.removeNote(0);
System.out.println("移除完毕");
String[] a=nb.list();
for (String s : a)
{
System.out.println(s);
} } } - 运行结果

-
- 记事本的例子
Java进阶学习(3)之对象容器(上)的更多相关文章
- Java进阶学习:将文件上传到七牛云中
Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...
- Java进阶学习:log4j的学习和使用
Java进阶学习——log4j的学习和使用 简介Loj4j Log4j的组成 Log4j主要由三大组组件构成: Logger: 负责生成日志,并能够对日志信息进行分类筛选,通俗的讲就是决定什么日志信息 ...
- Java进阶学习(3)之对象容器(下)
对象数组 对象数组中的每个元素都是对象的管理者而非对象本身 对象数组的for—each循环 集合容器(HashSet) HashSet 数学中的集合,元素间满足互异性.确定性.无序性 HashSet& ...
- Java进阶学习(3)之对象容器.小练习
查找里程(10分) 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需 ...
- Java进阶学习(1)之类与对象(上)
package com.study; //自动售卖机 public class vmachine { private int price = 80; private int balance; priv ...
- Java进阶学习(2)之对象交互(上)
对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...
- Java进阶学习(2)之对象交互(下)
访问属性 封闭的访问属性 private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员 这是从代码层面去考虑的,意味着不同类文件 开放的访问属性 一个类文件就是一个编译单元 pub ...
- Java进阶学习(1)之类与对象(下)
类与对象 函数与调用 函数是通过对象来调用的 this 是成员函数的特殊的固有的本地变量 它表达了调用这个函数的那个对象 调用函数 通过 . 运算符,调用某个对象的函数 在成员函数内部直接调用自己(t ...
- java学习4-面向对象(上)
1.类和对象 修饰符可以是public.final.abstract或者完全省略这三个修饰符 类名命名规则:每个单词首字母大写,其他字母全部小写,单词与单词之间不使用分隔符 修饰符:可以省略,也可以是 ...
随机推荐
- ubuntu 报错 Unable to locate package
解决方案参考 https://blog.csdn.net/u010622613/article/details/83017163
- api接口出现Provisional headers are shown,
问题分析:根据反馈可以知道,发起请求,但服务器未及时响应,原因可能是超时,或者被拦截
- 0002 增加APP配置
创建好工程后的第一步就是配置APP,目前有两个APP,配置APP的步骤如下: 01 APP目录配置 01.1 在APP目录下创建Templates目录,用于存储模板文件 01.2 在APP目录下创建v ...
- linux虚拟机内网突然不通了
之前安装后 内网,外网测试通常的,今天有开发反应es服务不通了 后来到服务器查看了一下,es和同步服务都停了 重新启动,发现同步服务无法启动,网络问题 报错信息“Failed to initiali ...
- [TJOI2017] DNA - 后缀数组,稀疏表
[TJOI2017] DNA Description 求模式串与主串的匹配次数,容错不超过三个字符. Solution 枚举每个开始位置,进行暴力匹配,直到失配次数用光或者匹配成功.考虑到容错量很小, ...
- laravel路由组中namespace的的用法详解
做公司一个项目的时候发现laravel框架中可以省去action的路径前缀的用法: ps:用简短的话来理解就是说在路由组中定义namespace,可以省去你路由的前缀下面看例子 最终显示如下: 定义的 ...
- SQL中 select count(1) count中的1 到底是什么意思呢?和count(*)的区别
count(1),其实就是计算一共有多少符合条件的行. 1并不是表示第一个字段,而是表示一个固定值.其实就可以想成表中有这么一个字段,这个字段就是固定值1,count(1),就是计算一共有多少个1.同 ...
- 安装符合rancher2.x要求的docker
安装符合rancher2.x要求的docker 待办 https://rancher.com/docs/rancher/v2.x/en/installation/requirements/instal ...
- awk从放弃到入门(2):awk分隔符
一.awk分隔符 awk的默认分割符是空格,但是,这样描述并不精确,因为,awk的分隔符还分为两种,"输入分隔符" 和 "输出分隔符" . (1)输入分隔符:英 ...
- 搭建第一个scrapy项目的常见问题
错误1:在执行 scrapy crawl spider名命令的时候 出现了ImportError:DLL load failed: %1不是有效的win32程序错误 这是因为pywin32的版本安装错 ...