集合小结,

Lingo_集合小结 Lingo_集合小结 现在,我们归纳一下基本集合和派生集合的定义语法。基本集合的定义格式为(以下语 法中凡是在方括号“[ ]”中的内容,表示是可选的项,即该项可以有也可以没有): setname [/member_list/] [: attribute_list]; 其中 setname 为定义的集合名,member_list 为元素列表,attribute_list 为属性列 表。元素... 阅读详情

1、基本方法 

package enumeration;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class C {
    public static  void main(String[] args) {
        List list = new ArrayList();
        //创建一个ArrayList,用接口来接收。牢记那张图。
       list.add("jack");//只要是Object的子类都可以放。
       list.add(10);//这里自动装箱了成为Integer。
       list.add(true);
        System.out.println("list =" + list );
//        list.remove(0);//删除第一个元素
//        list.remove("true");
        boolean k = list.contains("k");//看集合是否包含
        System.out.println(k);
        int num = list.size();//看集合的个数
        list.isEmpty();//看是否为空。
//        list.clear();将其清空
//        list.addAll();添加多个元素
//        list.addAll(Collection o);只要是实现了Collection接口的子类都可以传进去。
       ArrayList list2 = new ArrayList();
        list2.add("woaini");
        list2.add("yidingyaozaiyiqi");
        list.addAll(list2);
        System.out.println(list);
        //containsAll:查找多个元素是否存在
        System.out.println(list.containsAll(list2));
      list.removeAll(list2);
        
    }
}

2、

package Gather;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class gather {
    public static void main(String[] args) {
        Collection a = new ArrayList();
        a.add(new Book("向上生长","paoge",12.5));
        a.add(new Book("乌合之众","siji",11.5));
        a.add(new Book("通信原理","fan",52.5));
        System.out.println(a);
        //(1)先得到a对应的迭代器
        Iterator iterator = a.iterator();
        //(2)使用while循环遍历
        while(iterator.hasNext()){//判断是否 还有数据
            Object obj = iterator.next();//作用(1)将指针下移(2)将下移之前的元素返回(3)类型是Object
            System.out.println(obj);

        }
        //还有一个快捷键哦
//        while (iterator.hasNext()) {
//            Object obj =  iterator.next();
//
//        }  itit快捷键
        //(3)档推出while循环后,此时iterator迭代器指向最后的元素
//        iterator.next();再次取值的话,就会出现异常啊,因为此时已经到达了最下面了
        //(4)希望再次遍历的话,需要重置迭代器:
        iterator = a.iterator();//需要重置迭代器,再一次指向最前方。

    }
}
class Book {
    private String name;
    private String author;
    private double price;

    public Book(String name, String author, double price) {
        this.name = name;
        this.author = author;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Book{" +
                "name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", price=" + price +
                '}';
    }
}

增强for

package Gather;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class gather {
    public static void main(String[] args) {
        Collection a = new ArrayList();
        a.add(new Book("向上生长","paoge",12.5));
        a.add(new Book("乌合之众","siji",11.5));
        a.add(new Book("通信原理","fan",52.5));
        //增强for循环:也可以用在数组上,本质上也是一个iterator,可以理解成简化版本的迭代器。
        //快捷键I。
       

        for(Object book : a){
            System.out.println(book);
        }
        
    }
}
class Book {
    private String name;
    private String author;
    private double price;

    public Book(String name, String author, double price) {
        this.name = name;
        this.author = author;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Book{" +
                "name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", price=" + price +
                '}';
    }
}

list的相关方法

package Gather;

import java.util.ArrayList;
import java.util.List;

public class list {
    public static void main(String[] args) {
        //(1)List集合类中的元素有序(添加顺序和取出的顺序一致,且可以重复)
       List list = new ArrayList();
       list.add("jack");
       list.add("mary");
       list.add("a");
       list.add("j");
       list.add(1,"j");//没有加入索引的时候默认加在最后面
        list.remove(4);//删除指定下表的元素
        list.set(0,"xiaozhu");//将下表索引为0的元素替换成xiaozhu
//      list  subList(int fromList ,int tolist) 返回指定位置的值到一个行的子集合,左闭右开。
        List list1 = list.subList(0, 2);
        System.out.println(list1);
        System.out.println(list.lastIndexOf("j"));
        System.out.println("list " + list);
        //(2)List集合中的每个元素都具有其对应的索引
    }
}

三种方法遍历集合:

   Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            Object next =  iterator.next();
            System.out.println("list" + next);
        }

        for (Object o :list) {
            System.out.println(o);
            
        }
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

对集合里面的某项数据(对象中的某个数据)进行排序

package Gather;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Price {
    public static void main(String[] args) {
        List list = new ArrayList();
        list.add(new Book("通信原理","樊",125.2));
        list.add(new Book("信号","樊",25.2));
        list.add(new Book("电磁场原理","樊",12));
        //list.get(i);得到第j个集合

        for (Object o :list) {
            System.out.println(o);
        }

        //排序
        bubble(list);
        
        System.out.println("排序后的值");

        for (Object o :list) {
            System.out.println(o);
        }


    }
    public static void bubble(List list){
        for (int i = 0; i < list.size() - 1; i++) {
            for (int j = 0; j < list.size() - 1 - i; j++) {
                 Book book1 = (Book)list.get(j);
                 Book book2 = (Book)list.get(j + 1);
                if (book1.getPrice() > book2.getPrice()){
                    list.set(j,book2);
                    list.set(j+1,book1);
                    //集合就不用进行交换了,直接用set方法
                    //因为他是引用类型,所以直接改变原来的值
                }
            }
        }

    }
}

class Book{
    private String name ;
    private String author;
    private double price;

    public Book(String name, String author, double price) {
        this.name = name;
        this.author = author;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Book{" +
                "name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", price=" + price +
                '}';
    }
}

手把手教你低成本复刻大疆C板缓启动电路(附原理图与选型清单) 本文详细介绍了如何低成本复刻大疆C板缓启动电路,包括核心器件选型、电路搭建与调试实战、参数优化方法论及进阶改进思路。通过替代型号和优化设计,实现功能相近的缓启动电路,成本不到原方案的1/3,适合电子爱好者、在校学生和预算紧张的硬件工程师。 阅读详情

相关推荐

Kettle 连接 Oracle 数据库全流程指南

例如:C:\Oracle\product\19.0.0\dbhome_1\jdbc\lib\ojdbc8.jar 2. 替换 Kettle 驱动文件 将驱动文件复制到 Kettle 的 目录: 删除旧版本驱动:如 ojdbc14.jar 只能保留一个oracle驱动 重启 Kettle 以加载新驱动 二、配置数据库连接 1. 启动 Kettle 并新建转换 运行 (Windows)或 (Linux)。 新建转换(Transformation),添加 “表输入” 步骤,双击进入配置。 2.

qq_44724453的博客 3482

集合-小结

转载于:https://www.cnblogs.com/zhangxiong-tianxiadiyi/p/10816632.html

weixin_30325071的博客 89

UE5 GAS实战:从零构建一个MOBA英雄技能系统

本文详细介绍了如何利用UE5的Gameplay Ability System(GAS)构建MOBA英雄技能系统,涵盖核心组件如Ability System Component和GameplayEffect的使用,以及技能冷却、资源管理和连招系统等高级功能的实现。通过实战案例和代码示例,帮助开发者快速掌握GAS在MOBA游戏开发中的应用。

weixin_29012765的博客 527

JDK集合框架小结

前面的一些文章主要分析了 Java 集合框架(Java Collections Framework, JCF)中常用的类和接口,本文打算做个整体的小结。JCF 主要包括 ...

WriteOnRead 442

【网络与爬虫 61】移动端App爬虫终极指南:Android-iOS应用数据提取黑科技全解析

本文全面解析移动端App爬虫技术,涵盖Android和iOS两大平台的数据提取方法。从基础的网络抓包到高级的代码注入,从自动化测试框架到反调试技术绕过,为开发者提供移动端数据采集的完整解决方案和实战经验。

熵数实验室 3027

【软考之软件设计师】学习笔记

interface 接口implements 实现接口(与接口配套使用)接口里要是有方法定义,子类就会实现。

云轩阁 2533

Collection系列集合的小结+集合并发修改异常问题

【代码】Collection系列集合的小结+集合并发修改异常问题。

m0_55470667的博客 485

DeepSeek + 微信:手把手教你把 AI 接入个人微信,秒变“高情商”聊天助手(防封指南)

将 DeepSeek 接入微信,本质上是给你的微信装了一个**“最强外挂”**。它不仅能帮你回消息,还能帮你写周报、查资料、甚至陪聊解闷。工具是服务于人的,不要让 AI 完全替代了你的真情实感。毕竟,真正的高情商,是屏幕背后那个在乎对方的你。先申请一个小号,按照步骤跑通流程。然后试着调整 Prompt,训练一个属于你自己的“嘴替”吧!

BUG猿的博客 957

数仓SQL | 集合运算小结

本文主要分享SQL中集合运算的小结(UNION, INTERSECT, MINUS, ALL选项等),实践的数据库为Oracle(PL/SQL)。

一个不断前进的计算机菜菜 341

信贷模型域——清收阶段模型(贷后模型)

本文深入探讨了信贷模型域中的清收阶段模型(贷后模型),涵盖早期催收模型(C卡)、晚期催收模型、Best Time to Contact模型和回收模型。这些模型通过多维度数据输入,运用分类、回归和生存分析等建模方法,输出关键指标如还款概率、回收率等,广泛应用于银行、资产管理公司和催收外包公司,助力提升回款率、优化资源分配、降低催收成本,并融入贷后风控体系。

庄小焱 653

ROS2入门到精通—— ROS2实战专栏(实时更新)

Nav2专栏介绍

BigDavid123的博客 2370

集合小结

集合小结 1.集合综述: 1.1集合框架: [外链图片转存失败(img-rTJ4lqeO-1565236373046)(E:\java千峰\第一阶段-pdf\好程序员第一阶段\第11天\集合框架List\Collection集合.png)] [外链图片转存失败(img-81aq4oHx-1565236373047)(E:\java千峰\第一阶段-pdf\好程序员第一阶段\第11天\集合框架List...

weixin_43153155的博客 282

37、基于视觉的轻量级面部呼吸和心率测量技术

本文提出了一种基于视觉的轻量级面部呼吸和心率测量技术,通过远程光电容积脉搏波描记法(RPPG)和面部振动信息实现非接触式生理信号采集。创新性地结合框选和特征点选择多个感兴趣区域(ROI),并采用光流跟踪、主成分分析(PCA)和集成经验模态分解(EEMD)等方法优化信号处理流程。实验结果表明,该方法在测量精度和稳定性方面优于传统方法,并可在树莓派4等低功耗平台上实现实时运行,具有广泛的应用前景。

r7s8t的博客 307

List集合小结

大致描述ArrayList, LinkedList,以及迭代器中ListIterator

qq_45888932的博客 737

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

java集合小结

Map、Set、List、Collections、迭代器、排序原理

qq_46338854的博客 1901

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Java集合小结

这一节先快速回顾所学集合知识(抓要点,不深追底层代码),下一节复习集合的八股文狠狠学java,猛猛赚他一笔!

m0_74927596的博客 1156

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Java集合框架小结

Java集合框架,常复习: Java集合框架之小结 1、Java容器类库的简化图,下面是集合类库更加完备的图。包括抽象类和遗留构件(不包括Queue的实现): 2、ArrayList初始化时不可指定容量,如果以new ArrayList()方式创建时,初始容量为10个;如果以new ArrayList(Collection c)初始化时,容量为c.size()*1....

"其实我是一演员"的专栏 849

java集合类小结

一、首先来俩张java集合类图:      上述类图中,实线边框的是实现类,比如ArrayList,LinkedList,HashMap等,折线边框的是抽象类,比如AbstractCollection,AbstractList,AbstractMap等,而点线边框的是接口,比如Collection,Iterator,List等。   发现一个特点,上述所有的集合类,

lucky_zfx的博客 326

集合的小结

上面是集合的继承体系图,根据此图可更方便学习集合Colleciton的集合的高级功能: boolean addAll(Collection c)  :添加一个集合中的所有元素 boolean removeAll(Collection c):删除的高级功能(思考:删除一个算是删除还是删除所有算是删除?) boolean containsAll(Collection c):包含所有元素算是包含,还是包...

yb1887的博客 243
上一篇: 字符串反转
下一篇: 链表的例子
atitude
博客等级 码龄7年 10粉丝 197原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值