Java用list储存,遍历,查询指定信息过程详解

 更新时间:2019年10月09日 11:53:30   作者:小龙_T无限  
这篇文章主要介绍了Java用list储存,遍历,查询指定信息过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

需求说明

实现思路

见代码注释

代码内容

使用list储存,遍历,查询,删除

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

/**
 * @auther::9527
 * @Description: 第七题
 * @program: 多线程
 * @create: 2019-08-09 23:39
 */
public class Seventh {
  public static void main(String[] args) {
    //初始化企鹅信息
    Pengui p1 = new Pengui("欧欧", "Q仔");
    Pengui p2 = new Pengui("亚亚", "Q妹");
    Pengui p3 = new Pengui("菲菲", "Q妹");
    Pengui p4 = new Pengui("美美", "Q妹");
    //创建List集合并将企鹅信息添加进list中
    List<Pengui> list = new ArrayList<>();
    list.add(p1);
    list.add(p2);
    list.add(p3);
    list.add(p4);
    //查看企鹅数量
    System.out.println("总共有" + list.size() + "只企鹅");
    //查看所有企鹅的信息
    for (Pengui pengui : list) {
      System.out.println(pengui.getName() + "\t" + pengui.getGender());
    }
    //按题意删除指定的企鹅 题目中只保留了欧欧和亚亚,所以要删除的是菲菲和美美
    for (int i = 0; i < list.size(); i++) {
      if (list.get(i).getName().equals("菲菲")) {
        list.remove(i);
      }

      if (list.get(i).getName().equals("美美")) {
        list.remove(i);
      }
    }
    System.out.println("\n\n");
    System.out.println("删除之后只剩" + list.size() + "只企鹅\n" +
        "分别是:");
    //查看剩下的企鹅
    for (Pengui pengui : list) {
      System.out.println(pengui.getName() + "\t" + pengui.getGender());
    }

    //判断企鹅中是否包含指定企鹅,题目中指定的是美美
    String index = "美美";
    //设置中转查询temp  temp取值为一个数组下标中绝对不会出现的数字
    int temp = -1;
    //遍历集合,如果集合中有这个元素,就给temp赋值,如果集合中没有这个元素,则不会被赋值
    for (int i = 0; i < list.size(); i++) {
      if (list.get(i).getName().equals(index)){
        temp = i;
      }
    }
    //如果temp的值没变,则表明没有这个元素,如果temp的值变掉了,则表明有这个元素
    if (temp == -1){
      System.out.println("集合中不包含 "+index+" 的信息");
    }else{
      System.out.println("集合中包含 "+index+ " 的信息");
    }
  }
}

运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 剑指Offer之Java算法习题精讲字符串与二叉搜索树

    剑指Offer之Java算法习题精讲字符串与二叉搜索树

    跟着思路走,之后从简单题入手,反复去看,做过之后可能会忘记,之后再做一次,记不住就反复做,反复寻求思路和规律,慢慢积累就会发现质的变化
    2022-03-03
  • 使用Java代码获取服务器性能信息及局域网内主机名

    使用Java代码获取服务器性能信息及局域网内主机名

    这篇文章主要介绍了使用Java代码获取服务器性能信息及局域网内主机名的方法,方便对服务器的远程管理和团队协作时用到,而且文中的方法无需调用jni,需要的朋友可以参考下
    2015-11-11
  • Java图文分析之继承内存布局

    Java图文分析之继承内存布局

    这篇文章主要介绍了Java图文分析之继承内存布局,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的朋友可以参考一下
    2022-09-09
  • redis 使用lettuce 启动内存泄漏错误的解决方案

    redis 使用lettuce 启动内存泄漏错误的解决方案

    这篇文章主要介绍了redis 使用lettuce 启动内存泄漏错误的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • tk.mybatis扩展通用接口使用详解

    tk.mybatis扩展通用接口使用详解

    这篇文章主要介绍了tk.mybatis扩展通用接口使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • java求解汉诺塔问题示例

    java求解汉诺塔问题示例

    汉诺塔问题的描述如下:有3根柱子A、B和C,在A上从上往下按照从小到大的顺序放着一些圆盘,以B为中介,把盘子全部移动到C上。移动过程中,要求任意盘子的下面要么没有盘子,要么只能有比它大的盘子。编程实现3阶汉诺塔的求解步骤
    2014-02-02
  • 浅谈Mybatis分页插件,自定义分页的坑

    浅谈Mybatis分页插件,自定义分页的坑

    这篇文章主要介绍了浅谈Mybatis分页插件,自定义分页的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java二维数组计算集合总结

    Java二维数组计算集合总结

    本篇文章给大家整理了关于Java二维数组计算集合的内容总结,有需要的读者们可以参考下。
    2018-02-02
  • SpringMVC中@Valid不起效BindingResult读取不到Error信息

    SpringMVC中@Valid不起效BindingResult读取不到Error信息

    在写SpringMVC项目时,由于要对表单数据进行校验,需要使用@Valid进行校验,但是在进行数据校验时,BindingResult对象无法拦截非法表单数据,result.hasErrors()无论怎么输入都会返回false,本文详细的介绍一下解决方法
    2021-09-09
  • 一文带你深入剖析Java线程池的前世今生

    一文带你深入剖析Java线程池的前世今生

    这篇文章主要带大家介绍了深入剖析一下Java线程池的前世今生,了解线程池的原理以及为什么需要线程池。文中的示例代码讲解详细,需要的可以参考一下
    2022-10-10

最新评论