Java 数组遍历器

package com.ruifeng.core.util;

import java.util.Arrays;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

/**
 * 数组 遍历器
 * 
 * <pre>
 *    Object[] objects=new Object[5];
 *    objects[0]="string";
 *    objects[1]=new Integer(1);
 *    objects[2]=new Double(1d);
 *    obejcts[3]=new Date();
 *    objects[4]=new Boolean(false);
 *    正常访问:
 *      String str=(String)objects[0];
 *      Integer i=(Integer)objects[1];
 *      Double d=(Double)objects[2];
 *      Date date=(Date)objects[3];
 *      Boolean bool=(Boolean)objects[4];
 *    Example:
 *      ObjectQueue queue=new ObjectQueue(objects);
 *      String str=queue.getString();
 *      Integer i=queue.getInteger();
 *      Double d=queue.getDouble();
 *      Date date=queue.getDate();
 *      Boolean bool=queue.getBoolean();
 * 
 * 
 * </pre>
 * 
 * 
 * @author Administrator
 * 
 */
public class ObjectQueue {
	private Iterator<Object> iterator;

	/**
	 * convert Object To object[]
	 * 
	 * @param objects
	 */
	public ObjectQueue(Object objects) {
		super();
		iterator = Arrays.asList((Object[]) objects).iterator();
	}

	public ObjectQueue(Object[] objects) {
		super();
		iterator = Arrays.asList(objects).iterator();
	}

	public ObjectQueue(List<Object> objects) {
		super();
		iterator = objects.iterator();
	}

	public Integer getInteger() {
		if (iterator.hasNext())
			return NumberUtil.parseInt(iterator.next());
		return null;
	}

	public Double getDouble() {
		if (iterator.hasNext()) {
			return NumberUtil.parseDouble(iterator.next());
		}
		return null;
	}

	public Float getFloat() {
		if (iterator.hasNext()) {
			return NumberUtil.parseFloat(iterator.next());
		}
		return null;
	}

	public String getString() {
		if (iterator.hasNext()) {
			return (String) iterator.next();
		}
		return null;
	}

	public Date getDate() {
		if (iterator.hasNext()) {
			return (Date) iterator.next();
		}
		return null;
	}

	public Short getShort() {
		if (iterator.hasNext()) {
			return NumberUtil.parseShort(iterator.next());
		}
		return null;
	}

	public Boolean getBoolean() {
		if (iterator.hasNext()) {
			return (Boolean) iterator.next();
		}
		return null;
	}

	public Long getLong() {
		if (iterator.hasNext()) {
			return NumberUtil.parseLong(iterator.next());
		}
		return null;
	}

	public Byte getByte() {
		if (iterator.hasNext()) {
			return (Byte) iterator.next();
		}
		return null;
	}

	public Object getObject() {
		if (iterator.hasNext()) {
			return iterator.next();
		}
		return null;
	}
}


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值