JAVA操作多条list数据赋值,爬虫系列

爬取数据后进行数据加工的时候会发现处理数据的List很麻烦,三个list进行循环和赋值会很复杂,加上对应的数据都不在一个频道上。

基本的需求就是:我爬出来三种不同数据的List但是都是对应的,所以我要把这三条list进行合并组装数据,上代码

1.封装实体
package com.demo.until;

/**
 * 
 * <br>Description:TODO 数据源类功能描述
 * <br>Date:2019年12月17日
 */
public class LinstnerDate {

  //标题
  private String title;

  //URL 链接
  private String url;

  //数据源
  private String date;

  public String getTitle() {
    return title;
  }

  public void setTitle(String title) {
    this.title = title;
  }

  public String getUrl() {
    return url;
  }

  public void setUrl(String url) {
    this.url = url;
  }

  public String getDate() {
    return date;
  }

  public void setDate(String date) {
    this.date = date;
  }

  @Override
  public String toString() {
    return "LinstnerDate [title=" + title + ", url=" + url + ", date=" + date + "]";
  }

}

2.数据数据源
package com.demo.until;

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

public class DateLinster {
  public static void main(String[] args) {

    //三种list 分别要对应相应的数据 第一条数据要和第二个list的数据响应起来
    List<String> titleList = new ArrayList<String>();
    titleList.add("今天");
    titleList.add("明天");
    titleList.add("后天");

    List<String> urlList = new ArrayList<String>();
    urlList.add("www.baidu.today");
    urlList.add("www.baidu.Mingday");
    urlList.add("www.baidu.Houday");

    List<String> dateList = new ArrayList<String>();
    dateList.add("多云");
    dateList.add("晴");
    dateList.add("大雨");

    //用list分装实体
    List<LinstnerDate> list = new ArrayList<LinstnerDate>();
    //首先我要知道他的list数据只有三条 循环三次
    for (int i = 1; i <= 3; i++) {

      //把实体对象new 出来进行赋值
      LinstnerDate linstnerDate = new LinstnerDate();

      //遍历第一个list
      for (String title : titleList) {
        //进行赋值
        linstnerDate.setTitle(title);
        //删除第一个  
        titleList.remove(0);
        //停止循环
        break;
      }
      for (String url : urlList) {
        linstnerDate.setUrl(url);
        urlList.remove(0);
        break;
      }

      for (String date : dateList) {

        linstnerDate.setDate(date);
        dateList.remove(0);
        break;
      }

      list.add(linstnerDate);
    }

    //这样的逻辑就是遍历一个大的list循环三次是已知他的数据
    //然后封装一个实体类 ,在循环里边遍历第一个list 进行赋值 然后删除第一个 跳出循环 然后大循环会
    //一个一个进行循环,list删除第一个以后停止循环 第二次进来就是第二条数据 第一条数据已经删除了
    //就是这样的一个逻辑
    System.out.println("date======" + list + "======" + list.size());

  }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值