• 集合的遍历和扩容原理


     一.泛型集合

    双列泛型的三种遍历:

    Dictionary<string,Student> dic=new Dictionary<string,Student>();
    dic.add("张三",stu1);
    dic.add("李四",stu2);

     (1)

    foreach(string item in dic.Keys)
    {
    Student stu=dic[item];
    }

        (2)

    foreach(Student item in dic.Values)
    {
         Console.WriteLine(item);
    }

        (3)

    foreach(KeyValuePair<string,Student> item in dic)
    {
    //item=key+Value
    item.Key
    item.Value
    }

    //数据绑定 List<UserInfo> list ----单列绑定
    dgvList.DataSource=new BindingList<UserInfo>(list);
    --------------------------------------------------------------

    双列绑定
    Dictionary<string,Student> dic=new Dictionary<string,Student>();
    BindingSource bs=new BindingSource();
    bs.DataSource=dic.Values;
    dgvList.DataSource=bs;

    二.集合的扩容原理

    当调用Add()方法时,先判断集合中元素的个数和保存元素的个数的数组长度是否一致,再决定是否扩容

    如果数组长度小于需要长度就扩容,

    如果数组长度不等于0就将数组的长度*2

    ***注:扩容的上限为0x7fefffff约21亿

    再调用Capacity的set方法利用数组间的copy方法(新数组的长度是旧数组的二倍)给数组扩容

    三.方法重载可变参数

    C#      可变的
    public void say(params object[] objs)
    {

    }
    public static int ExecuteNonQuery(string cmdTxt, params SqlParameter[] parames)
    {
    return ExecuteNonQuery(cmdTxt, CommandType.Text, parames);
    }

    JAVA

    public ResultSet executeQuery(String sql,Object... objs) throws Exception{
        con=getConnection();
        ps = con.prepareStatement(sql);
        for (int i = 0; i < objs.length; i++) {
        ps.setObject(i+1, objs[i]);
           }
           rs= ps.executeQuery();
           return rs;
    }

    四.对象间的交互.

     UML(Uniform Model Language)统一建模语言:

     StarUML:

      类图

    用例图

    序列图/时序图

  • 相关阅读:
    SpringBoot 官方文档中文版
    SpringBoot 官方文档中文版
    SpringBoot 官方文档中文版
    RK 打包脚本 make_ext4fs system.img
    Linux安装docker-compose
    Linux使用docker安装Jenkins 并进行jar包发布
    JAVA把InputStream 转 字节数组(byte[])
    SpringBoot简单整合分布式任务调度平台(XXL-JOB)
    SpringBoot项目bootstrap.yml配置文件不加载
    JAVA中Base64和byte数组(byte[]) 相互转换
  • 原文地址:https://www.cnblogs.com/wy0119/p/7016920.html
Copyright © 2020-2023  润新知