• JAVA核心技术I---JAVA基础知识(数据结构基础)


    一:数组

    (一)基本内容是与C一致的

    (二)数组定义和初始化

    (1)声明

            int a[];    //a没有new操作,没有被分配内存,为null
            int[] b;    //b没有new操作,没有被分配内存,为null(可以看做指针)
            
            int[] c=new int[2];    //为c分配了空间,且数据初始为0
            
            for(int e : c) {
                System.out.println(e);
            }

    (2)初始化

            int d[] = new int[] {0,2,4};
            int d1[]= {1,3,5};  //最符合c

    (三)数组索引

    (1)数组的length属性标识数组的长度,从0开始,到length -1

    (2)越界ArrayIndexOutOfBoundsException异常

    (3)遍历方式

            int d[] = new int[] {0,2,4};
            
            for(int e : d) {
                System.out.println(e);
            }
            
            for(int i=0;i<d.length;i++) {
                System.out.println(d[i]);
            }
    0
    2
    4
    0
    2
    4

    (四)多维数组:不同之处在于可以实现不规则数组

            //规则数组
            int a[][] = new int[2][3];
            
            //不规则数组
            int b[][];
            b=new int[3][];
            b[0] = new int[3];
            b[1] = new int[4];
            b[2] = new int[5];
            
            int k=0;
            
            for(int i=0;i<b.length;i++) {
                for(int j=0;j<b[i].length;j++) {
                    b[i][j]=k++;
                }
            }
            
            for(int[] items : b) {
                for(int item : items) {
                    System.out.println(item);
                }
            }

    二:JCF<Java Collection Framework>容器框架(同C++中STL)

    (一)容器和容器框架了解

    容器:能够存放数据的空间结构
    –数组/多维数组,只能线性存放 顺序存储
    –列表/散列集/树/.....      非顺序存储
    容器框架:为表示和操作容器而规定的一种标准体系结构
    –对外的接口:容器中所能存放的抽象数据类型
    –接口的实现:可复用的数据结构
    –算法: 对数据的查找和排序
    容器框架优点:提高数据存取效率,避免程序员重复劳动
    Java 1.1和以前的数据结构
    –Vector, Stack, Hashtable,Enumeration等
    Java1.2和以后,JCF集合框架
    –功能更强大
    –易于学习
    –接口和实现分离,多种设计模式设计更灵活
    –泛型设计

    (二)结构分类

    (三)接口,实现,算法

    (1)接口

    (2)数据结构实现类

    (3)算法类

  • 相关阅读:
    IDEA debug时特慢 Method breakpoints may dramatically slow down debugging
    docker构建镜像
    ubuntu 挂载硬盘
    python 的 flask 、django 、tornado 、sanic
    scrapy实战之scrapyrt的使用
    scrapy框架集成http
    python3之Splash
    CentOS7安装PostgreSQL9.6(图文详细操作)
    替代Navicat的数据库操作工具DBeaver
    CentOS 7 安装 Graylog
  • 原文地址:https://www.cnblogs.com/ssyfj/p/10217938.html
Copyright © 2020-2023  润新知