Java使用小结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/BAStriver/article/details/83791956

1.将元素插入List的指定位置:

List<String> list = new ArrayList<String>();  
        list.add("a");  
        list.add("b");  
        list.add("c");  
        list.add("d");  
        list.add("e");  
        list.add(2, "f");  
        System.out.println(list); // [a, b, f, c, d, e]

2.对List<?>排序:

首先假设youz有这个bean : ColumnValue

public class ColumnValue implements Comparable<ColumnValue>{

    private ColumnMeta column;
    private Object value;
    private boolean check = true;

    public ColumnValue() {
    }

    public ColumnValue(ColumnMeta column, Object value) {
        this(column, value, true);
    }

    public ColumnValue(ColumnMeta column, Object value, boolean check) {
        this.value = value;
        this.column = column;
        this.check = check;
    }

    public ColumnMeta getColumn() {
        return column;
    }

    public void setColumn(ColumnMeta column) {
        this.column = column;
    }

    public Object getValue() {
        return value;
    }

    public void setValue(Object value) {
        this.value = value;
    }

    public boolean isCheck() {
        return check;
    }

    public void setCheck(boolean check) {
        this.check = check;
    }

    public ColumnValue clone() {
        ColumnValue column = new ColumnValue();
        column.setValue(this.value);
        column.setColumn(this.column.clone());
        return column;
    }

    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((column == null) ? 0 : column.hashCode());
        result = prime * result + ((value == null) ? 0 : value.hashCode());
        return result;
    }

    public boolean equals(Object obj) {
        if (this == obj) return true;
        if (obj == null) return false;
        if (getClass() != obj.getClass()) return false;
        ColumnValue other = (ColumnValue) obj;
        if (column == null) {
            if (other.column != null) return false;
        } else if (!column.equals(other.column)) return false;
        if (value == null) {
            if (other.value != null) return false;
        } else if (!value.equals(other.value)) return false;
        return true;
    }

    @Override
    public String toString() {
        return "ColumnValue [column=" + column + ", value=" + value + "]";
    }

	@Override
	public int compareTo(ColumnValue col) {
		// TODO Auto-generated method stub
		int flag = this.column.getName().compareTo(col.column.getName());
		
		return flag;
	}

}

对,shi实现这个接口 :  Comparable<ColumnValue>

然后实现这个对比的方法 : compareTo 这里是根据name来排序。

调用排序:

List<ColumnValue> columns = new LinkedList<ColumnValue>();

Collections.sort(columns); // 排序

猜你喜欢

转载自blog.csdn.net/BAStriver/article/details/83791956