我的java学习笔记(10)关于泛型数据列表

1.ArrayList是一个采用类型参数的泛型类。

2.为了指定数组列表保存的元素对象类型,需要用一对尖括号将类名括起来加在后面。

ArryList<a> s = new ArrayList<a>();//右边尖括号里的参数可以省略

3.使用add方法将元素添加到数组列表中。

s.add(a());

4.数组列表管理着对象引用的一个内部数组。如果调用add且内部数组已经满了,数组列表就将自动的创建一个更大的数组,并将所有的对象从较小的数组中拷贝到较大的数组中。

5.还可以把出事容量传递给ArrayList构造器

ArrayList<a> s = new ArrayList<>(100);

6.size方法将返回数组列表中包含的实际元素数目。

7.一旦能够确认数组的大小不在发生变化,就可以调用trimToSize方法。

8.ArrayList类并不是java程序设计语言的一个部分,它只是一个由某些人编写且被放在标准库中的一个实用类。

9.使用get和set方法实现访问或改变数组元素的操作。

s.set(i,b);//将s中的第i个元素换成b

a c = s.get(i); //返回s中第i个元素,保存在c中

10.使用toArray方法将数组元素拷贝到一个数组中。

a[] n = new a[s.size()];
s.toArray(a);

11.除了在数组列表的尾部追加元素之外,还可以在数组列表的中间插入元素,使用带索引参数的add方法。

int n = s.size()/2;
s.add(n,d);

12.使用remove方法删除元素。

s.remove(n);

实例代码

测试类

import java.util.*;

public class test {

	public static void main(String[] args)
	{
		ArrayList<Employee> sf = new ArrayList<>();

		sf.add(new Employee("w1",1000,1990,1,1));
		sf.add(new Employee("w2",1500,1988,1,1));
		sf.add(new Employee("w3",2000,1989,1,1));

		for(Employee e : sf)
			e.raiseSalary(5);

		for(Employee e : sf)
			System.out.println("name =" + e.getName() + ",salary =" + e.getSalary() + ",hireDay =" +e.getHireDay());
	}

}

雇员类

import java.util.Date;
import java.util.GregorianCalendar;

public class Employee {

	private String name;
	private Date hireDay;
	private double salary;

	public Employee(String n,double s,int year,int month,int day)
	{
		name = n;
		salary = s;
		GregorianCalendar gr = new GregorianCalendar(year,month - 1,day);
		hireDay = gr.getTime();
	}

	public String getName()
	{
		return name;
	}

	public double getSalary()
	{
		return salary;
	}

	public Date getHireDay()
	{
		return hireDay;
	}

	public void raiseSalary(double p)
	{
		double raise = salary * p / 100;
		salary += raise;
	}

}
时间: 2024-11-08 09:50:27

我的java学习笔记(10)关于泛型数据列表的相关文章

Java学习笔记九(泛型)

1.介绍 所谓的泛型就是将类型作为一种参数来传递,有了泛型后类型不再是一成不变的,可以通过泛型参数来指定.可以提供程序开发的灵活性. 2.泛型类或接口的使用 泛型类声明时,与普通类没有太大的区别,只是在类中加入了类型变量的声明 public class 类名<类型变量>{..........................................................................} <span style="font-family:SimS

Java学习笔记10

31.编写当年龄age大于13且小于18时结果为true的布尔表达式age > 13 && age < 18 32.编写当体重weight大于50或身高大于160时结果为true的布尔表达式weight > 50 || height > 160 33.编写当体重weight>50且身高height大于160时结果为true的布尔表达式weight > 50 && height > 160 34.编写当体重weight大于50或身高h

Java学习笔记-10.io流

1.输入流,只能从中读取数据,而不能向其写出数据.输出流,只能想起写入字节数据,而不能从中读取. 2.InputStream的类型有: ByteArrayInputStream 包含一个内存缓冲区,字节从中取出. FileInputStream 从文件中获得字节. ObjectInputStream 用来恢复被序列化的对象. PipedInputStream 管道输入流,读取管道内容.多和PipedOutputStream一起用于多线程通信. SequenceInputStream 是多种输入流

Java学习笔记_26_泛型概述

                                                               泛型概述 在Java中存入容器中的对象再取出时需要转换类型,因为对象加入容器会被转换成Object类型,而取出时要转换成实际类型.但向  下类型转换都 是存在潜在危险的,因此应该尽量避免它们.  Java的泛型: 所谓泛型就是在定义(类.方法.形参.成员变量等等)的时候,指 定它们为通用类型,也就是数据类型可以是任意类型. 泛型为提高大型程序的类型安全和维护带来了很大的潜

java学习笔记10--泛型总结

java学习笔记系列: java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--对象的初始化与回收 java学习笔记3--类与对象的基础 java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址:http://www.cnblogs.com/archimedes/p/java-study-note10.html,转载

java学习笔记 第二篇 核心技术(二)

第十四章 集合类 集合类用来存放对象的引用.继承关系如下图: 14.1 Collection 接口 是层次结构中的根接口,构成Collection的单位称为元素.Collection接口不能直接使用,但该接口提供了添加元素.删除元素.管理数据的方法. Collection接口常用方法: 14.2 List 集合 包括List接口以及List集合的所有实现类.List集合中的元素允许重复,各元素循序就是对象插入的顺序 1.List接口,两个重要方法: get(int index): 获取指定索引位

java学习笔记 5

随手 看到了这篇关于Java到底哪里出了问题的文章,笑傻了23333 “Java developers just can’t help themselves it seems - give em an inch, and next thing you know you’re looking at a OO hierarchy 15 layers deep and instantiating a hammer hammer factory.” 继承 Java中的继承用extends,所有的继承都是

Java学习笔记(2015.7.27~7.31)

Java学习笔记(2015.7.27~7.31) Java 课堂 Java学习笔记(2015.7.27~7.31) 小技巧 常用方法 1.List另一个子类--LinkedList 2.数组的常用方法 3.排序 1.二分法查找 2.数组转换为List 3.可变参数Type ... param (了解) 1.容器Collection 2.自动拆装箱(了解) 3.JDK增强for循环(了解) 4.泛型(掌握) 5.iterator与for在迭代中的区别 1.概念:保存多个对象的对象. 2.JDk为什

Java学习笔记3-操作符

Java基本操作符:+.-.*./.%.=.==.!=.+=.-=. 优先级:先乘除后加减,如果是连接符+号会优先往前匹配,比如 a+++++b,会被解释称 a++ ++ +b,所以会报错,需要自行使用括号隔离为 (a++) + (++b). 对象的引用如果赋值给了对象的引用后,2 个对象将指向同一个引用,有一个对象的引用重新赋值后将同时影响到另一个对象,比如 ClassName classA = new ClassName(); ClassName classB = new ClassName