⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arraylisttablemodel.java

📁 航空售票系统的代码
💻 JAVA
字号:
package com.tarena.abs.server;import java.lang.reflect.Field;import java.util.ArrayList;import java.util.*;import javax.swing.table.AbstractTableModel;public class ArrayListTableModel extends AbstractTableModel{	private ArrayList arr;	public ArrayListTableModel(ArrayList arr){		this.arr=arr;	}		//获得列名,即属性名	public String getColumnName(int arg0) {		Class c=arr.get(0).getClass();		Field[] fs = c.getDeclaredFields();		return fs[arg0].getName();		}		//获得列数,即属性数	public int getColumnCount() {		Class c=arr.get(0).getClass();		return c.getDeclaredFields().length;	}	//获得行数,即元素个数	public int getRowCount() {		return arr.size();	}	//获得指定索引的值	                        //行,对象,      列,属性	public Object getValueAt(int rowIndex, int columnIndex) {		Class c=arr.get(0).getClass();  //arr类型		Field[] fs = c.getDeclaredFields();				//Field f = fs[columnIndex]  按索引返回属性列表中某个属性		//Object o = f.get(obj)返回指定对象(obj)上此 Field 表示的字段的值o		//Object o = arr.get(rowIndex)返回数组中索引处的对象		//设置所有访问属性		for(int i=0;i<fs.length;i++){			fs[i].setAccessible(true);		}		try {						Field f = fs[columnIndex];			Object o = arr.get(rowIndex);			Object col = f.get(o);  //属性字段的对象			if(col==null)return " —— ";			if(col.getClass()==java.util.GregorianCalendar.class){				Calendar cal = (Calendar)col;				StringBuffer sb = new StringBuffer();				sb.append(cal.get(Calendar.YEAR)+"年 ");				sb.append(cal.get(Calendar.MONTH)+"月 ");				sb.append(cal.get(Calendar.DAY_OF_MONTH)+"日");				return sb;			}else{			    //把值转化为string			return f.get(arr.get(rowIndex))+"";			}		} catch (IllegalArgumentException e) {			e.printStackTrace();		} catch (IllegalAccessException e) {			e.printStackTrace();		}				return null;	}	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -