当前位置: 首页 > news >正文

广州网页设计公司排名济南seo优化外包

广州网页设计公司排名,济南seo优化外包,杭州企业网站建设,seo搜索引擎优化薪酬一、泛型 概述 JDK1.5同时推出了两个和集合相关的特性:增强for循环,泛型 泛型可以修饰泛型类中的属性,方法返回值,方法参数, 构造函数的参数 Java提供的泛型类/接口 Collection, List, Set,Iterator 等 …

一、泛型

 概述

        JDK1.5同时推出了两个和集合相关的特性:增强for循环,泛型

        泛型可以修饰泛型类中的属性,方法返回值,方法参数, 构造函数的参数

Java提供的泛型类/接口

  • Collection, List, Set,Iterator 等

自定义的泛型

public class Student <H,W>{}

自定义的泛型方法

public static <T>  void showList(List<T> list){
        //list.forEach(s-> System.out.println(s));
        for (T t : list) {
            System.out.println(t);
        }
    }

 泛型的通配符

  T:  type(表示Java类型  类型)
  E: Element(主要在List中使用  元素)
  K:  key(主要在Map集合中使用,表示键)
  V: value(主要在Map集合中使用,表示值)
  ?: 表示不确定类型的Java类型

泛型的边界

  • 泛型的上界

    • 语法:? extends 类型

    • 位置:类上,方法参数

  • 泛型的下界

    • 语法:? super 类型

    • 位置: 方法参数

/*** 泛型的上界和下界** ? 是泛型的通配符,不知道用什么类型的时候用?* 泛型上界语法: ? extends 类* 泛型下界语法: ? super  类**/
public class GenericityTest {public static void main(String[] args) {List<Integer> list1 = new ArrayList<>();List<String> list2 = new ArrayList<>();List<Number> list3 = new ArrayList<>();List<Object> list4 = new ArrayList<>();ShowCollection sc = new ShowCollection();sc.showList1(list1);//sc.showList1(list2); 编译不通过,因为String不是Number的子类sc.showList1(list3);// sc.showList1(list4);  编译不通过,Object不是 Number的子类// sc.showList2(list1);  //编译不通过,因为Integer不是Number的父类//  sc.showList2(list2);  //编译不通过,因为String不是Number的父类sc.showList2(list3);   //最小不能低于Number.此处是Numbersc.showList2(list4);   //编译通过,Object是Number的父类}
}class ShowCollection{//泛型的上界public  void showList1(List<? extends Number>list){}//泛型的下界public  void showList2(List<? super Number> list){}
}

二、数据结构

1. 数据结构概述
   - 数据结构式计算机底层存储、组织数据的方式,是值数据与数据之间以什么样的方式排列在一起
   - 选择合适和数据结构可以带来更搞笑的运行或者存储效率
2. 常见的数据结构
   - 栈
   - 队列
   - 链表
   - 数组
   - ...
3. 栈数据结构的执行特点
   - 后进先出,先进后出
     - 入栈/压栈: 数据进入栈的过程
     - 出栈/弹栈:数据离开栈的过程
4. 队列
   - 先进先出,后进后出
     - 入队列:数据从队列后端进入队列的过程
     - 出队列:数据从队列前端离开对列的过程
5. 数组
   - 数组是一种查询快,增删慢的数据结构
   - 数组在内存中是一块连续的存储空间
6. 链表
   - 链表中的元素在内存中是不连续存储的(游离),每个元素节点都包含数据值和下一个元素的地址
   - 链表查询慢,增删快,首尾操作极快

三、List

java.util.List接口,通常称为:线性表* List继承自Collection,特点是可以存放重复的元素并且有序** 常用的实现类* java.util.ArrayList:内部用数组实现,查询性能好* java.util.LinkedList:内部使用链表实现,增删性能好,首尾增删性能最好* 在对集合操作性能没有特殊要求的条件下通常使用ArrayList*/
public class ListDemo {public static void main(String[] args) {List<String> list = new ArrayList<>();list.add("one");list.add("two");list.add("three");list.add("four");list.add("five");/***  E get(int index)  返回列表中指定位置的元素。*///获取集合中下标是3个元素System.out.println(list.get(3));//用for循环遍历集合for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}/***  E set(int index, E element)*           用指定元素替换列表中指定位置的元素(可选操作)。*           返回值是被替换掉的元素。*/String str = list.set(1, "二");System.out.println(str);System.out.println(list);//反转集合for(int i=0;i<list.size()/2;i++){//获取i上的元素String e = list.get(i);String s = list.set(list.size()-1-i,e);list.set(i,s);}System.out.println(list);System.out.println("==============================");/*** Collections类中提供了静态方法static void reverse(List<?> list)反转指定列表中元素的顺序。*/Collections.reverse(list);System.out.println(list);}
}

三点五、作业练习

/*** 泛型:* 泛型只是在编译期有效,在编译之后程序会采取去繁星花的措施。将泛型相关的信息擦除**/
public class CollectionDemo3 {public static void main(String[] args) {List<String> strs = new ArrayList<>();List<Integer> ints = new ArrayList<>();Class aClass = strs.getClass();Class bClass = ints.getClass();System.out.println(aClass);System.out.println(bClass);//        if(strs.equals(ints)){
//            System.out.println("类型一致");
//        }else{
//            System.out.println("类型不一致");
//        }}
}

/*** 自定义泛型方法测试*/
public class ShowListTest {public static void main(String[] args) {List<Integer> list = new ArrayList<>();list.add(1);list.add(2);list.add(3);list.add(4);list.add(5);//ShowList.showInt(list);ShowList.showList(list);List<String> strs = new ArrayList<>();strs.add("一");strs.add("二");strs.add("三");strs.add("四");strs.add("五");ShowList.showList(strs);List<Teacher> teas = new ArrayList<>();teas.add(new Teacher("张老师",1500));teas.add(new Teacher("李老师",2500));teas.add(new Teacher("孙老师",9500));teas.add(new Teacher("赵老师",3500));ShowList.showList(teas);}public static <T>  void showList(List<T> list){//list.forEach(s-> System.out.println(s));for (T t : list) {System.out.println(t);}}
}

http://www.tj-hxxt.cn/news/67623.html

相关文章:

  • 潍坊尚呈网站建设公司怎么样关键词优化公司费用多少
  • 北京直销网站开发公司seo查询 站长工具
  • 海南网站建设公司哪家好免费推广的方式
  • 清远建设网站制作短视频seo排名系统
  • 如皋电子商城网站建设自己怎么做网页推广
  • 武昌做网站多少钱磁力宝最佳搜索引擎入口
  • 如何能快速搜到新做网站链接谷歌seo排名优化服务
  • 网站如何在百度做排名一个新产品的营销方案
  • 怎么做自己的代刷网站电子商务营销策略
  • dw用层还是表格做网站快词爱站的关键词
  • 织梦可以做导航网站网站做成app
  • 做淘宝有哪些推广网站优化搜索关键词
  • 深圳横岗做网站的网站seo优化方案设计
  • 重庆网站设计好的公司交易链接
  • 厦门市建设局网站住房保障2018宁波seo服务快速推广
  • 公司网站建设价格贵吗最新seo黑帽技术工具软件
  • 做网站发布网旅游景点推广软文
  • 网站制作网站建设运营团队短视频搜索优化
  • 怎样做当地网站推广潍坊seo教程
  • 昆明网站建设开发推荐友情链接
  • 男人女人做羞羞事网站淄博网络推广公司哪家好
  • 做idc销售怎样建网站友情链接查询友情链接检测
  • 微信微网站是什么格式网络营销swot分析
  • 中港建设集团有限公司网站计算机培训机构哪个最好
  • ueeshop建站靠谱吗管理人员课程培训
  • 深圳餐饮网站建设免费网站免费
  • 啥十小企业网站建设广州网络公司
  • 在线做静态头像的网站关键词seo公司
  • 网站模板下载之后怎么做济南疫情最新消息
  • 凡科建站网页版营销策划运营培训机构