专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 常用8个Java接口

常用8个Java接口

更新时间:2020-10-29 17:28:40 来源:动力节点 浏览1168次

Java接口是一系列方法的声明,在Java中扮演着举足轻重的角色,是我们学习Java的必修课。然而,初学Java接口的小伙伴还是不知道我们在实际学习中会用到哪些Java接口,本文就为小伙伴们介绍常用8个Java接口


1.Iterable接口

package java.lang;

import java.util.Iterator;

// 返回一个迭代器

public interface Iterable {

Iterator iterator();

}

由接口代码可见,Iterable的实现类必须能够返回一个迭代器Iterator

迭代器是一个接口:一般使用场景是用一个(匿名)内部类实现该接口及相应的方法,使得可以访问外部类的元素,比如说ArrayList。


2. Iterator接口

package java.util;

public interface Iterator {

boolean hasNext(); // 是否还有需要迭代的元素

E next(); // 返回需要下一个元素

void remove(); // 删除最后next出来的元素

}

使用Iterator接口遍历集合元素,Iterator接口是JAVA集合框架的成员,也被称为迭代器。

Iterator接口中声明了如下方法:

boolean hashNext():如果迭代的集合元素还没被遍历,则返回true

Object next():返回集合里下一个元素。

Void remove():删除集合里上一次next方法返回的元素。


3.Collection接口

常用容器类所实现的List、Set接口都继承自Collection接口,而Collection接口则继承自Iterable,因此必须包含iterator()方法,并在该基础上增加add()等容器类的方法,因此常见容器类如ArrayList等都可以使用foreach遍历

import java.util.ArrayList;

import java.util.Collection;

import java.util.Collections;

public class ForEachCollections {

public static void main(String[] args) {

Collection cs = new ArrayList<>();

Collections.addAll(cs,

"Take the long way home".split(" "));

for(String s : cs) {

System.out.print("'" + s + "' ");

}

}

}


4.Comparable接口:

可以“自定义”排序规则

package java.lang;

import java.util.*;

public interface Comparable {

// 一般返回三种参数:负整数,0,正整数

public int compareTo(T o);

}

多用于排序算法,compareTo的返回结果的解释与具体的排序实现有关,而JDK中提供的排序方法解释为:A.compareTo(B)返回三种结果,负整数表示AB,0表示A=B

// 使用例子

import java.util.Arrays;

public class ComparableTest {

public static void main(String[] args) {

Integer[] a = new Integer[]{1,3,5,7,6,4,2}; // 将会自然排序,从小到大

MyInteger[] b = new MyInteger[a.length]; // 将会逆序,从大到小

for(int i = 0; i < a.length; i++) {

b[i] = new MyInteger((int)a[i]);

}

Arrays.sort(a);

Arrays.sort(b);

System.out.print("Sorted a: ");

for(int i =0;i

System.out.println();

System.out.print("Sorted b: ");

for(int i =0;i

}

}


5.Comparator接口

实现类本身就是一个比较器

package java.util;

public interface Comparator {

int compare(T o1, T o2); //比较两个元素的大小

boolean equals(Object obj); // 比较两个元素是否相等,T不一定是数字的类型,所以需要自己定义规则。


6.list接口

有序的集合,此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。list与Set不同,list允许重复的元素插入。


7.Set接口

无序的集合,最多支持一个null值,不允许重复元素,没有元素索引。set中的常用方法与collection中的一致,上面已经写过。


8.Map接口

请注意,Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同的key,每个key只能映射一个 value。

Map接口提供3种集合的视图,Map的内容可以被当作一组key集合,一组value集合,或者一组key-value映射。


以上就是我为小伙伴们介绍的常用8个Java接口,只要掌握了他们基本上就能解决Java中的绝大部分Java接口问题。至于,这几个Java接口的具体用法和说明可以观看本站的Java接口教程,帮你快速掌握Java接口知识。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>