前提:最近JAVA实训课老师讲了一些Arrarylist集合的相关知识,刚好端午假期有空就把这课上学到的知识和自己碰到的一些问题总结下来。

一.Arrarylist集合的使用(以学生信息存储作为演示):

  Aarrarylist集合有以下方法:

    object.add();

    //add()方法中填写的是泛型指定的类型

    object.remove(index);

    object.get(index);

    

  这里我先创建一个Student类作为数组存储学生信息:

public class Student {
public String sno;
public String sname;
public String sex;
public int age;
public String tel;

public Student(String sno,String sname,String sex,int age,String tel){
this.sno=sno;
this.sname=sname;
this.sex=sex;
this.age=age;
this.tel=tel;
}

@Override
public String toString() {
return "sno='" + sno + '\'' + ", sname='" + sname + '\'' + ", sex='" + sex + '\'' + ", age=" + age + ", tel='" + tel + '\'';
}
}

  其次创建一个Arrary的operate类

import java.util.List;
import java.util.ArrayList;

public class Array {
public static void main(String[] args) {
testString();
//testString的泛型使用的是String类型
Studenttest();
//Studenttest的泛型使用的是Student对象

}

public static void Studenttest(){
Student stu1 =new Student("1001","张三","男",18,"11111111111");
Student stu2 =new Student("1002","李四","男",18,"22222222222");
Student stu3 =new Student("1003","王五","男",18,"33333333333");

List<Student> list=new ArrayList<Student>();
list.add(stu1);
list.add(stu2);
list.add(stu3);

for(Student stu:list){
System.out.println(stu);
}
}

public static void testString() {
List<String> list = new ArrayList<String>();

list.add("tom");
list.add("张三");
list.add("李四");

for(int i=0;i<list.size();i++){
String str=list.get(i);
System.out.println(str);
}
}
  ArraryList集合有个特点:
  在使用object.remove(index)方法时删除index位置的信息后Arrary集合会"刷新"一次:将index位置后的信息的索引-1
演示:
 
public static void testString() {
List<String> list = new ArrayList<>();

list.add("tom");
list.add("张三");
list.add("李四");

list.remove(0);
list.remove(1);

for(int i=0;i<list.size();i++){
String str=list.get(i);
System.out.println(str);
}
}
  运行结果:

  

   分析:

      在运行了list.remove(0);后 张三的index由1变为0 李四的index由2变为1 所以删除的是李四

  

Arrarylist集合的使用的更多相关文章

  1. 【转载】C#使用InsertRange方法往ArrayList集合指定位置插入另一个集合

    在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,ArrayList集合可存储多种数据类型的对象.在实际的开发过程中,我们可以使用InsertRange方法在ArrayList集合指 ...

  2. 【转载】C#中使用Insert方法往ArrayList集合指定索引位置插入新数据

    ArrayList集合是C#中的一个非泛型的集合类,是弱数据类型的集合类,可以使用ArrayList集合变量来存储集合元素信息,在ArrayList集合操作过程中,可以使用ArrayList集合类的I ...

  3. Java常见错误

    1.NullPointerExceptin 空指针异常 a.引用没有初始化就使用 b.引用置空了,仍然被使用 2.IndexOutofBoundsException 下标越界 a.数组下标小于0 或者 ...

  4. 深入Collection集合

    List集合 一.ArraryList: 最基本的集合不多做介绍 二.Vector Vector cn=new  Vector(); A:有特有功能 a:添加       public void ad ...

  5. C#集合类型大盘点

    C#集体类型( Collections in C#) 集合是.NET FCL(Framework Class Library)中很重要的一部分,也是我们开发当中最常用到的功能之一,几乎是无处不在.俗话 ...

  6. java 15 -3 集合的遍历的练习

    练习:用集合存储5个动物对象,并把动物对象进行遍历. 分析: A:创建动物类 a:无参构造方法 b:有参构造方法 c:get.set方法 B:创建集合对象 a:Collection animal = ...

  7. 集合的知识点梳理(List,Set,不包含泛型)

    1.集合的常用框架 根据数据结构划分: Collection list set ArraryList ,LinkList,Vector TreeSet,HashSet 2.集合的存储 都是存储的对象的 ...

  8. C#: 集合

    摘自http://www.cnblogs.com/kissdodog/archive/2013/01/29/2882195.html 先来了解下集合的基本信息 1.BCL中集合类型分为泛型集合与非泛型 ...

  9. JAVA基础知识之List集合

    List接口和ListIterator接口介绍 List集合新增方法 List集合判断元素重复的标准 ListIterator List.ArrayList和List.Vector 固定长度的List ...

  10. C# 之 集合整理

    集合,表示可以通过遍历每个元素来访问的一组对象(特别是可使用foreach循环访问):一个集合包括多个元素,即有一个集合类对象和N个元素对象. BCL(Base Class Library, 基类库) ...

随机推荐

  1. 「acmhdu - 6314」Matrix

    link. 首先将问题弱化为 1-d,我们待定容斥系数 \(f_i\),可以写出答案的式子:\(\sum\limits_{i=a}^nf_i\binom{n}{i}2^{n-i}\).解释就是,我们想 ...

  2. Record -「CSP-S 2020」赛后总结

    其实这次的 CSP 暴露出来了很多问题. 比如策略上的,在 T1 花了太多的时间直接心态爆炸,后面的题只想着把暴力打满.看到 T2 只想着打暴力,根本没有沉下心来想,白白丢了一道(水)题. T3 连暴 ...

  3. std::copy与std::back_inserter引发的惨案

    #include <iostream> #include <vector> #include <numeric> #include <sstream> ...

  4. c++ 常用的 STL

    c++ 中常用的 STL vector //vector 变长数组 倍增的思想(倍增:系统为每一个程序分配空间的时候,所需要的时间和空间大小无关,与请求次数相关)尽量减少请求的次数 /* 返回元素的个 ...

  5. Apollo2.1.0+Springboot使用OpenApI

    依赖管理 <!-- bootstrap最高级启动配置读取 --> <dependency> <groupId>org.springframework.cloud&l ...

  6. 基于TRE文章的非线性模型化线性方法

    之前写过一篇有关TRE优化模型详解的博文: https://www.cnblogs.com/zoubilin/p/17270435.html 这篇文章里面的附录给出了非线性模型化线性的方式,具体内容如 ...

  7. android 尺寸适配相关

    Android上常见度量单位 px(像素):屏幕上的点,绝对长度,与硬件相关. in(英寸):长度单位. mm(毫米):长度单位. pt(磅):1/72英寸,point. dp(与密度无关的像素):一 ...

  8. 高效数据传输:Java通过绑定快速将数据导出至Excel

    摘要:本文由葡萄城技术团队于博客园原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 把数据导出至 Excel 是很常见的需求,而数据的持久化 ...

  9. 16.1 Socket 端口扫描技术

    端口扫描是一种网络安全测试技术,该技术可用于确定对端主机中开放的服务,从而在渗透中实现信息搜集,其主要原理是通过发送一系列的网络请求来探测特定主机上开放的TCP/IP端口.具体来说,端口扫描程序将从指 ...

  10. 一篇了解springboot3请求参数种类及接口测试

    SpringBoot3数据请求: 原始数据请求: //原始方式 @RequestMapping("/simpleParam") public String simpleParam( ...