java ArrayList的实现

public class ArrayListDemo {public int size=0;//当前数组容量public int capacity=2;//默认容量public Object[] objects = new Object[capacity];public ArrayListDemo() {}public void add(Object object) {//检查数组是否已经装满,如果数组装满,数组容量扩大一倍if(capacity==size){capacity = this.capacity*2;objects = Arrays.copyOf(objects,capacity);}//添加数据objects[size++]=object;}public void delete(Object object) {//删除指定元素//遍历数组int temp = 0;for(int i = 0;i<size;i++){if(object==objects[i]){temp = i;break;}}for(int j=temp;j<size;j++){objects[temp]=objects[temp+1];}size--;
//        System.arraycopy(objects, temp+1, objects, temp, size-temp);
//        size--;
    }@Overridepublic String toString() {//重写方法String str = "[";for (int i = 0;i<size;i++){str=str+" "+objects[i];}str=str+" "+"]";return str;}public void set(int i, Object object) {//修改数组if(i<0||i>capacity){System.out.println("超出数组大小");}for(int j=0;j<capacity;j++){if(i==j){objects[i-1]=object;break;}}}
}
public class ArrayListTest {public static void main(String[] args) {ArrayListDemo arrayListDemo = new ArrayListDemo();arrayListDemo.add(1);arrayListDemo.add("AA");arrayListDemo.add("##");arrayListDemo.add(6);arrayListDemo.add(5);System.out.println(arrayListDemo.size);//测试数组当前元素数量System.out.println(arrayListDemo);//测试查询//arrayListDemo.delete(6);//测试删除//System.out.println(arrayListDemo);//arrayListDemo.set(3,"hello");//测试修改//System.out.println(arrayListDemo);
    }
}

 

转载于:https://www.cnblogs.com/5aixin/p/11443846.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/568910.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux用户、权限及改变文件所有者及文件所属组多例详解 附python代码

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xff09; Linux用户、权限及改变文件所有者及文件所属组多例详解一、…

tensorflow tfrecoder read write

1 # write in tfrecord2 import tensorflow as tf3 import os4 os.environ[TF_CPP_MIN_LOG_LEVEL] 25 6 7 FLAGS tf.app.flags.FLAGS8 tf.app.flags.DEFINE_string("tfrecords_dir", "./tfrecords/captcha.tfrecords", "验证码tfrecords文件"…

linux管道举例理解

linux管道举例理解一、管道的定义&#xff1a;“|”二、查找2.1统计当前目录下有多少个文件2.2查看当前目录下的前n&#xff08;3&#xff09;个文件2.3查看wang.txt文件包含i的字符行2.4查看内存使用情况2.5查询进程三、更改https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎…

Sublime Text 3安装GoSublime

GoLand IDE工具虽然在编程时很好用&#xff0c;但是在使用中也有个问题&#xff0c;有时我们可能只是写一个简单的脚本来测试&#xff0c;对于我而言在打开IDE太重量级了&#xff0c;所以捣鼓了GoSublime工具来满足平时最基本的需求。 下载GoSublime源码 官方地址&#xff1a;h…

计算机二进制、八进制、十进制、十六进制的转换(计算机基础进制的转换)

常用进制转换1.进制特点2.十进制与二进制的转换2.1对应关系2.2举例一&#xff1a;二进制1011转换十进制2.3举例二&#xff1a;二进制10111转换十进制2.3举例三&#xff1a;十进制45转换成二进制2.4举例四&#xff1a;十进制小数0.25转换成二进制3.八进制与二进制3.1对应关系3.2…

sys.dm_exec_query_stats的total_worker_time的单位是微秒还是毫秒

该视图sys.dm_exec_query_stats存放的就是当前所有执行计划的详细信息&#xff0c;比如某条执行计划共占CPU多少等等。因为该视图对编译次数、占用CPU资源总量、执行次数等都进行了详细的记录&#xff0c;所以&#xff0c;可以说是优化 DB服务器CPU 的一大利器。 那么如下关于C…

Pycharm如何导入python文件,及出现报错解决办法

导入及解决报错导入py文件解决报错问题https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行&#xff01; 如有转载&#xff0c;请注明出处&#xff08;…

快速排序算法理解-python

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xff09; 目录快速排序定义举例代码快速排序定义 定义一个基准值&a…

HTTP协议理解——计算机网络

http一、概念传输流程HTTP请求/应答应的步骤如下&#xff1a;二、特点三、工作原理四、URL4.1定义4.2语法五、状态码5.1http常见状态码5.2状态码分类5.3常用端口号一、概念 1.http(超文本传输协议)是一种用于从WWW服务器传输超文本到本地浏览器的传输协议。 2.涉及两个对象&am…

AutoCAD2013 以上利用AccoreConsole+ c# NetApi Windows Froms 封装

1# 封装类 1 public static class CmdHelper2 {3 /// <summary>4 /// 调用AutoCAD 安装目录下的AccoreConsole.exe来实现批量处理图纸(Net Api dll)5 /// </summary>6 /// <param name"cmsStr">NetApi中注册…

广域网、局域网和城域网的理解

定义 局域网&#xff1a;Local Area Network&#xff1b;简称LAN&#xff0c;是一个可连接家庭、学校、企业等有限区域的计算机网络 城域网&#xff1a;Metropolitan Area Network&#xff1b;简称MAN&#xff0c;是一个城市范围内所建立的计算机通信网 广域网&#xff1a;Wid…

C# 的一些便捷用法

分割字符串 这样可以用一串字符串分割并且分为数组 string[] arr System.Text.RegularExpressions.Regex.Split(str, "\r\n"); dynamic 动态类型 List<dynamic> 可以自定义内容并绑定列 List<dynamic> dy new List<dynamic>(); dy.Add(new{Cus…

队列与栈结构的相同点与不同点

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行&#xff01; 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xf…

SQL Server 输出 XML

一、概述 SELECT 查询将结果作为行集返回。在 SQL 查询中指定 FOR XML 子句&#xff0c;从而将该查询的正式结果作为 XML 来检索。FOR XML 子句可以用在顶级查询和子查询中。顶级 FOR XML 子句只能用在 SELECT 语句中。而在子查询中&#xff0c;FOR XML 可以用在 INSERT、UPDAT…

linux重定向输出命令

目录一、符号二、“>”举例2.1举例一2.2举例二三、“>>”举例3.1举例一3.2举例二https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行&#x…

python面向对象基础之类与实例

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行&#xff01; 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xf…

微信小程序进度条

<button classdown-img bindtapdownImg data-scr{{imageUrl}}>下载图片{{progress}}</button> downImg: function (e) {var _this this;// 获取图片地址(http://www.playsort.cn/...)//var img e.currentTarget.dataset.src;//var img ../pic/U1513P28T52D3414F…

mysql10.3修改默认存储路径

版本为10.3的用该种方式修改&#xff1a; 创建/data/mysql目录 mkdir -p /data/mysql 给这个目录至少要附加读写权限 chmod 777 /data/mysql -r 把mariadb服务停掉 systemctl stop mariadb 把/var/lib/mysql整个目录复制到新路径下 cp -r /var/lib/mysql/* /data/mysql 编辑ma…

计算机硬件系统和软件系统

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行&#xff01; 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xf…

修改mysql锁空间大小

A. 单次生效设置 进入mysql命令 mysql -uroot -p show variables like "%_buffer%";(不要忘记带;号&#xff0c;没有;号表示一条语句没有结束) 默认的innodb_buffer_pool_size8M tmp_table_size 4G max_heap_table_size 256M innodb_file_format Barracuda defa…