/*
 * 对信息封装成一个类
 * 利用Jlist类显示
 * 利用集合对对象进行删除,查找,添加
 * java.util.Comparator的简单使用

*/

package cn.hncu.main;import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Arrays;
import java.util.Calendar;import javax.swing.ButtonGroup;
import javax.swing.DefaultListModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextField;import cn.hncu.common.MyDate;
import cn.hncu.common.Person;
import cn.hncu.common.Student;
import cn.hncu.games.Gobang;
import cn.hncu.games.HitMouse;
import cn.hncu.games.RetroSnaker;
import cn.hncu.games.Tetris;
import cn.hncu.mytoolkit.MusicPlayer;
import cn.hncu.mytoolkit.MyDraw;
import cn.hncu.mytoolkit.MyJsq;
import cn.hncu.mytoolkit.MyNoteBook;
import cn.hncu.set.MySet;public class PersonShow extends JFrame{private String dir="./images_PersonShow/";private JLabel labOne;private JRadioButton[][] reJRadioButtons;private JTextField txtNameField,txtStuIDField;private JComboBox[][] personMessage;int count=0;//动态监听private ActionListener actionListeren=new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {//对月份的合理管理if(e.getSource() instanceof JComboBox){if(e.getSource()==personMessage[0][0]||e.getSource()==personMessage[0][1]){String strYear=(String)personMessage[0][0].getSelectedItem();int year=Integer.parseInt(strYear.substring(0,strYear.length()-1));int month=personMessage[0][1].getSelectedIndex()+1;int day=personMessage[0][2].getSelectedIndex()+1;Calendar calender=Calendar.getInstance();personMessage[0][1].removeActionListener(actionListeren);personMessage[0][1].removeAllItems();personMessage[0][2].removeAllItems();int todayMonth=calender.get(Calendar.MONTH)+1;int dayOfNum=MyDate.maxDays(year, month);if(calender.get(Calendar.YEAR)==year){for (int i = 1; i <= todayMonth; i++) {personMessage[0][1].addItem(i+"月");}int today=MyDate.maxDays(year, month);if(month<todayMonth)personMessage[0][1].setSelectedIndex(month-1);else{personMessage[0][1].setSelectedIndex(todayMonth-1);today=calender.get(Calendar.DATE);}dayOfNum=today;}else{for (int i = 1; i <= 12; i++) {personMessage[0][1].addItem(i+"月");}personMessage[0][1].setSelectedIndex(month-1);}personMessage[0][1].addActionListener(actionListeren);for (int i = 1; i <= dayOfNum; i++) {personMessage[0][2].addItem(i+"日");}if(day<=dayOfNum)personMessage[0][2].setSelectedIndex(day-1);elsepersonMessage[0][2].setSelectedIndex(dayOfNum-1);}else if(e.getSource()==personMessage[1][0]){int index=personMessage[1][0].getSelectedIndex();personMessage[1][1].removeAllItems();for (int i = 0; i < province_city[index].length; i++) {personMessage[1][1].addItem(province_city[index][i]);}}else if(e.getSource()==personMessage[2][0]){sort();search();}else if(e.getSource()==personMessage[2][1]){sort();search();}}else if(e.getSource() instanceof JRadioButton){if(e.getSource()==reJRadioButtons[0][0]){personMessage[1][2].removeAllItems();personMessage[1][2].setEnabled(false);txtStuIDField.setEditable(false);}else if(e.getSource()==reJRadioButtons[0][1]){for (int i = 0; i < specialty.length; i++) {personMessage[1][2].addItem(specialty[i]);}personMessage[1][2].setEnabled(true);txtStuIDField.setEditable(true);}}else if(e.getSource() instanceof JButton){if(e.getSource()==addRemove[0]){String name=txtNameField.getText();if(name.equals(""))name=null;String sex=null;if(reJRadioButtons[1][0].isSelected())sex="男";elsesex="女";String strYear=(String)personMessage[0][0].getSelectedItem();int year=Integer.parseInt(strYear.substring(0,strYear.length()-1));int month=personMessage[0][1].getSelectedIndex()+1;int day=personMessage[0][2].getSelectedIndex()+1;MyDate myDate=new MyDate(year, month, day);String province=(String)personMessage[1][0].getSelectedItem();String city=(String)personMessage[1][1].getSelectedItem();String politicalStatus=null;if(tuanYuan.isSelected())politicalStatus="团员";Person p=new Person(name, sex, myDate, province, city, politicalStatus);if(reJRadioButtons[0][0].isSelected()){if(mySet.add(p))personListModel.addElement(mySet.get(mySet.size()-1));}else{String stuId=txtStuIDField.getText();if(stuId.equals(""))stuId=null;String specially=(String)personMessage[1][2].getSelectedItem();Student s=new Student(p, stuId, specially);if(mySet.add(s))personListModel.addElement(mySet.get(mySet.size()-1));}}else if(e.getSource()==addRemove[1]){if(personList.getSelectedIndex()==-1)return;if(mySet.size()<1)return;int index=personList.getSelectedIndex();personListModel.remove(index);mySet.remove(index);}else if(e.getSource()==addRemove[2]){personListModel.removeAllElements();mySet.removeAll();}sort();search();}else if(e.getSource() instanceof JMenuItem){                if(e.getActionCommand().equals("Draw"))new MyDraw();else if(e.getActionCommand().equals("NoteBook"))new MyNoteBook();else if(e.getActionCommand().equals("Counter"))new MyJsq();else if(e.getActionCommand().equals("MusicPlayer"))new MusicPlayer();else if(e.getActionCommand().equals("Tetris"))new Tetris();else if(e.getActionCommand().equals("HitMouse"))new HitMouse();else if(e.getActionCommand().equals("RetroSnaker"))new RetroSnaker();else if(e.getActionCommand().equals("Gobang"))new Gobang();}}//排序private void sort() {personListModel.removeAllElements();String strSort=(String)personMessage[2][1].getSelectedItem();Object[] obj=mySet.getAll();Arrays.sort(obj, new ComPerson(strSort, 0));mySet.removeAll();for (int i = 0; i < obj.length; i++) {mySet.add(obj[i]);}for (int i = 0; i < mySet.size(); i++) {personListModel.addElement(mySet.get(i));}}//接口实现比较排序class ComPerson implements java.util.Comparator<Object>{private String comTerm;private int order;public ComPerson(String comTerm,int order) {this.comTerm=comTerm;this.order=order;}@Overridepublic int compare(Object o1, Object o2) {Person p1=(Person)o1;Person p2=(Person)o2;if(comTerm.equals("姓名")){if(p1.getName()==null&&p2.getName()!=null)return -1;else if(p2.getName()==null&&p1.getName()!=null)return 1;else if(p1.getName()==null&&p2.getName()==null)return 0;if(p1.getName().compareTo(p2.getName())>0){if(order==0)return 1;elsereturn -1;}else if(p1.getName().compareTo(p2.getName())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}else if(comTerm.equals("性别")){if(p1.getSex().compareTo(p2.getSex())>0){if(order==0)return 1;elsereturn -1;}else if(p1.getSex().compareTo(p2.getSex())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}else if(comTerm.equals("出生年月")){if(p1.getMyDate().beforeInt(p2.getMyDate())<0){if(order==0)return 1;elsereturn -1;}else if(p1.getMyDate().beforeInt(p2.getMyDate())>0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}else if(comTerm.equals("省份")){if(p1.getProvince().compareTo(p2.getProvince())>0){if(order==0)return 1;elsereturn -1;}else if(p1.getProvince().compareTo(p2.getProvince())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}else if(comTerm.equals("省市")){if(p1.getProvince().compareTo(p2.getProvince())>0){if(order==0)return 1;elsereturn -1;}else if(p1.getProvince().compareTo(p2.getProvince())<0){if(order==0)return -1;elsereturn 1;}else{if(p1.getCity()==null&&p2.getCity()!=null)return -1;else if(p2.getCity()==null&&p1.getCity()!=null)return 1;else if(p1.getCity()==null&&p2.getCity()==null)return 0;if(p1.getCity().compareTo(p2.getCity())>0){if(order==0)return 1;elsereturn -1;}else if(p1.getCity().compareTo(p2.getCity())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}}else if(comTerm.equals("学院")){if(p1 instanceof Student&&!(p2 instanceof Student))return 1;else if(p2 instanceof Student&&!(p1 instanceof Student))return -1;else if(!(p2 instanceof Student)&&!(p1 instanceof Student))return 0;if(((Student)p1).getSpecially().compareTo(((Student)p2).getSpecially())>0){if(order==0)return 1;elsereturn -1;}else if(((Student)p1).getSpecially().compareTo(((Student)p2).getSpecially())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;}else{if(p1 instanceof Student&&!(p2 instanceof Student))return 1;else if(p2 instanceof Student&&!(p1 instanceof Student))return -1;else if(!(p2 instanceof Student)&&!(p1 instanceof Student))return 0;if(((Student)p1).getStuId()==null&&((Student)p2).getStuId()!=null)return -1;else if(((Student)p2).getStuId()==null&&((Student)p1).getStuId()!=null)return 1;else if(((Student)p1).getStuId()==null&&((Student)p2).getStuId()==null)return 0;if(((Student)p1).getStuId().compareTo(((Student)p2).getStuId())>0){if(order==0)return 1;elsereturn -1;}else if(((Student)p1).getStuId().compareTo(((Student)p2).getStuId())<0){if(order==0)return -1;elsereturn 1;}elsereturn 0;} }}//查找private void search() {personListModel.removeAllElements();String strSearch=(String)personMessage[2][0].getSelectedItem();for (int i = 0; i < mySet.size(); i++) {if(strSearch.equals("Person")){if(mySet.get(i) instanceof Person)personListModel.addElement(mySet.get(i));}else if(strSearch.equals("Student")){if(mySet.get(i) instanceof Student)personListModel.addElement(mySet.get(i));}else if(strSearch.equals("男")){if(((Person)mySet.get(i)).getSex().equals(strSearch))personListModel.addElement(mySet.get(i));}else if(strSearch.equals("女")){if(((Person)mySet.get(i)).getSex().equals(strSearch))personListModel.addElement(mySet.get(i));}else if(strSearch.endsWith("市")||strSearch.endsWith("区")||strSearch.endsWith("省")){if(((Person)mySet.get(i)).getProvince().equals(strSearch))personListModel.addElement(mySet.get(i));}else if(strSearch.endsWith("学院")){if(mySet.get(i) instanceof Student)if(((Student)mySet.get(i)).getSpecially().equals(strSearch))personListModel.addElement(mySet.get(i));}else if(strSearch.equals("团员")){if(((Person)mySet.get(i)).getPoliticalStatus()!=null)personListModel.addElement(mySet.get(i));}}}};private String[] province,specialty;private String[][] province_city;private JCheckBox tuanYuan;private JButton[] addRemove;private DefaultListModel personListModel;private JList personList;private JMenu[] menu;private JMenuItem[][] menuItem;private MySet mySet=new MySet(true);public PersonShow(){super("PersonShow");setBounds(200, 60, 900, 600);setDefaultCloseOperation(EXIT_ON_CLOSE);//菜单JMenuBar bar=new JMenuBar();String[] str0={"选项","工具","游戏"};String[][] str00={{},{"画图","记事本","计算器","音乐播放器"},{"俄罗斯方块","打地鼠","贪吃蛇","五子棋"}};String[][] str00Com={{},{"Draw","NoteBook","Counter","MusicPlayer"},{"Tetris","HitMouse","RetroSnaker","Gobang"}};menu=new JMenu[str0.length];menuItem=new JMenuItem[menu.length][];for (int i = 0; i < menuItem.length; i++) {menu[i]=new JMenu(str0[i]);menuItem[i]=new JMenuItem[str00[i].length];for (int j = 0; j < menuItem[i].length; j++) {menuItem[i][j]=new JMenuItem(str00[i][j]);menuItem[i][j].setActionCommand(str00Com[i][j]);menuItem[i][j].addActionListener(actionListeren);menu[i].add(menuItem[i][j]);}bar.add(menu[i]);}setJMenuBar(bar);//内容窗格布局JPanel personInPanel=new JPanel(new GridLayout(9, 1));JPanel personOutPanel=new JPanel(new BorderLayout());JSplitPane personSplitPane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,personInPanel, personOutPanel);personSplitPane.setDividerLocation(200);personSplitPane.setOneTouchExpandable(true);getContentPane().add(personSplitPane);reJRadioButtons=new JRadioButton[2][];//personInPanel布局JLabel labZero=new JLabel("信息管理:",JLabel.CENTER);labZero.setFont(new Font("仿宋", Font.BOLD+Font.ITALIC, 20));personInPanel.add(labZero);JPanel paneZero=new JPanel(new GridLayout(1, 2));ButtonGroup groZero=new ButtonGroup();String[] strZero={"Person","Student"};String[] imgZero={"Person.jpg","student.jpg"};reJRadioButtons[0]=new JRadioButton[strZero.length];for (int i = 0; i < reJRadioButtons[0].length; i++) {if(i==0)reJRadioButtons[0][i]=new JRadioButton(strZero[i],new ImageIcon(dir+imgZero[i]),true);elsereJRadioButtons[0][i]=new JRadioButton(strZero[i],new ImageIcon(dir+imgZero[i]));reJRadioButtons[0][i].addActionListener(actionListeren);groZero.add(reJRadioButtons[0][i]);paneZero.add(reJRadioButtons[0][i]);}personInPanel.add(paneZero);JPanel paneOne=new JPanel();JLabel labOne=new JLabel("姓名:");paneOne.add(labOne);txtNameField=new JTextField(12);paneOne.add(txtNameField);personInPanel.add(paneOne);JPanel paneTwo=new JPanel(new GridLayout(1, 2));ButtonGroup groTwo=new ButtonGroup();String[] strTwo={"男","女"};String[] imgTwo={"nan.jpg","nu.jpg"};reJRadioButtons[1]=new JRadioButton[strTwo.length];for (int i = 0; i < reJRadioButtons[1].length; i++) {if(i==0)reJRadioButtons[1][i]=new JRadioButton(strTwo[i],new ImageIcon(dir+imgTwo[i]),true);elsereJRadioButtons[1][i]=new JRadioButton(strTwo[i],new ImageIcon(dir+imgTwo[i]));groTwo.add(reJRadioButtons[1][i]);paneTwo.add(reJRadioButtons[1][i]);}personInPanel.add(paneTwo);personMessage=new JComboBox[3][];String[][] strMyDate=new String[3][];int[][] intMyDate=new int[strMyDate.length][];int[] numOne={2016-1990+1,12,31};int[] numTwo={1990,1,1};String[] numThree={"年","月","日"};for (int i = 0; i < strMyDate.length; i++) {strMyDate[i]=new String[numOne[i]];intMyDate[i]=new int[numOne[i]];for (int j = 0; j < strMyDate[i].length; j++) {intMyDate[i][j]=numTwo[i]+j;strMyDate[i][j]=intMyDate[i][j]+numThree[i];}}JPanel paneThree=new JPanel(new GridLayout(1, strMyDate.length));personMessage[0]=new JComboBox[strMyDate.length];for (int i = 0; i < personMessage[0].length; i++) {personMessage[0][i]=new JComboBox(strMyDate[i]);paneThree.add(personMessage[0][i]);}personMessage[0][0].addActionListener(actionListeren);personMessage[0][1].addActionListener(actionListeren);personInPanel.add(paneThree);personMessage[1]=new JComboBox[3];provinceCity();personMessage[1][0]=new JComboBox(province);personMessage[1][0].addActionListener(actionListeren);personInPanel.add(personMessage[1][0]);personMessage[1][1]=new JComboBox(province_city[0]);personInPanel.add(personMessage[1][1]);specialty=new String[]{"土木工程学院","城市管理学院","外国语学院","信息科学与技术学院","美术与艺术科学学院","化学与环境科学学院","数学与计算科学学院","体育学院","通信技术与科学学院","音乐学院","文学院","商学院"};personMessage[1][2]=new JComboBox();personMessage[1][2].setEnabled(false);personInPanel.add(personMessage[1][2]);JPanel paneFour=new JPanel();JLabel labFour=new JLabel("学号:");paneFour.add(labFour);txtStuIDField=new JTextField(10);txtStuIDField.setEditable(false);paneFour.add(txtStuIDField);tuanYuan=new JCheckBox("团员");paneFour.add(tuanYuan);personInPanel.add(paneFour);//personOutPanel布局personListModel=new DefaultListModel();personList=new JList(personListModel);personOutPanel.add(new JScrollPane(personList));//下方控制面板JPanel controlPane=new JPanel();String[] strControl={"添加","删除选中项","删除全部"};addRemove=new JButton[strControl.length];for (int i = 0; i < addRemove.length; i++) {addRemove[i]=new JButton(strControl[i]);addRemove[i].addActionListener(actionListeren);controlPane.add(addRemove[i]);}personMessage[2]=new JComboBox[2];controlPane.add(new JLabel("查找关键字:"));personMessage[2][0]=new JComboBox(addStr(addStr(strZero,strTwo),addStr(province,specialty)));personMessage[2][0].addItem("团员");personMessage[2][0].addActionListener(actionListeren);controlPane.add(personMessage[2][0]);controlPane.add(new JLabel("排序关键字:"));String[] strSort={"姓名","性别","出生年月","省份","省市","学院","学号"};personMessage[2][1]=new JComboBox(strSort);personMessage[2][1].addActionListener(actionListeren);controlPane.add(personMessage[2][1]);personOutPanel.add(controlPane,BorderLayout.SOUTH);setVisible(true);}//省市private void provinceCity() {province=new String[]{"北京市","上海市","天津市","重庆市","香港特别行政区","澳门特别行政区","台湾省","内蒙古省","新疆省","广西省","西藏省","宁夏省","辽宁省","吉林省","黑龙江省","河北省","山西省","陕西省","甘肃省","青海省","山东省","安徽省","江苏省","浙江省","河南省","湖北省","湖南省","江西省","福建省","云南省","海南省","四川省","贵州省","广东省"};province_city=new String[][]{{},{},{},{},{},{},{"基隆市","台中市","新竹市","台南市","嘉义市","台北市","高雄市"},{"呼和浩特市","包头市","乌海市","赤峰市","通辽市","鄂尔多斯市","呼伦贝尔市","巴彦淖尔市","乌兰察布市","兴安市","锡林郭勒市","阿拉善市"},{"乌鲁木齐市","克拉玛依市","吐鲁番市","哈密市","昌吉市","和田市","阿克苏市","喀什市","克孜勒苏市","柯尔克孜市","巴音郭楞市","博尔塔拉市","伊犁市","哈萨克市","塔城市","阿勒泰市","库尔勒市","石河子市","阿拉尔市","图木舒克市","五家渠市"},{"南宁市","柳州市","桂林市","梧州市","北海市","防城港市","钦州市","贵港市","玉林市","百色市","贺州市","河池市","来宾市","崇左市"},{"拉萨市","昌都市","山南市","日喀则市","那曲市","阿里市","林芝市"},{"银川市","石嘴山市","吴忠市","固原市","中卫市"},{"沈阳市","大连市","鞍山市","抚顺市","本溪市","丹东市","锦州市","营口市","阜新市","辽阳市","盘锦市","铁岭市","朝阳市","葫芦岛市"},{"长春市","吉林市","四平市","辽源市","通化市","白山市","松原市","白城市","延边市"},{"哈尔滨市","齐齐哈尔市","鸡西市","鹤岗市","双鸭山市","大庆市","伊春市","佳木斯市","七台河市","牡丹江市","黑河市","绥化市","大兴安岭市"},{"石家庄市","唐山市","秦皇岛市","邯郸市","邢台市","保定市","张家口市","承德市","沧州市","廊坊市","衡水市"},{"太原市","大同市","阳泉市","长治市","晋城市","朔州市","晋中市","运城市","忻州市","临汾市","吕梁市"},{"西安市","铜川市","宝鸡市","咸阳市","渭南市","延安市","汉中市","榆林市","安康市","商洛市"},{"兰州市","嘉峪关市","金昌市","白银市","天水市","武威市","张掖市","平凉市","酒泉市","庆阳市","定西市","陇南市","临夏市","甘南市"},{"西宁市","海东市","海北市","黄南市","海南市","果洛市","玉树市","海西市"},{"济南市","青岛市","淄博市","枣庄市","东营市","烟台市","潍坊市","威海市","济宁市","泰安市","日照市","莱芜市","临沂市","德州市","聊城市","滨州市","菏泽市"},{"合肥市","芜湖市","蚌埠市","淮南市","马鞍山市","淮北市","铜陵市","安庆市","黄山市","滁州市","阜阳市","宿州市","巢湖市","六安市","亳州市","池州市","宣城市"},{"南京市","无锡市","徐州市","常州市","苏州市","南通市","连云港市","淮安市","盐城市","扬州市","镇江市","泰州市","宿迁市"},{"杭州市","宁波市","温州市","嘉兴市","湖州市","绍兴市","金华市","衢州市","舟山市","台州市","丽水市"},{"郑州市","开封市","洛阳市","平顶山市","焦作市","鹤壁市","新乡市","安阳市","濮阳市","许昌市","漯河市","三门峡市","南阳市","商丘市","信阳市","周口市","驻马店市","济源市"},{"武汉市","黄石市","襄樊市","十堰市","荆州市","宜昌市","荆门市","鄂州市","孝感市","黄冈市","咸宁市","随州市","恩施市","仙桃市","潜江市","天门市","神农架市"},{"长沙市","株洲市","湘潭市","衡阳市","邵阳市","岳阳市","常德市","张家界市","益阳市","郴州市","永州市","怀化市","娄底市","湘西市"},{"南昌市","景德镇市","萍乡市","九江市","新余市","鹰潭市","赣州市","吉安市","宜春市","抚州市","上饶市"},{"福州市","厦门市","莆田市","三明市","泉州市","漳州市","南平市","龙岩市","宁德市"},{"昆明市","曲靖市","玉溪市","保山市","昭通市","丽江市","普洱市","临沧市市","文山市","红河市","西双版纳市","楚雄市","大理市","德宏市","怒江市","迪庆市"},{"海口市","五指山市","琼海市","文昌市","万宁市","东方市","定安市","屯昌市","澄迈市","临高市","白沙市","昌江市","乐东市","陵水市","保亭市","琼中市","西沙市","南沙市","中沙市","三亚市","儋州市"},{"成都市","自贡市","攀枝花市","泸州市","德阳市","绵阳市","广元市","遂宁市","内江市","乐山市","南充市","宜宾市","广安市","达州市","眉山市","雅安市","巴中市","资阳市","阿坝市","甘孜市","凉山市"},{"贵阳市","六盘水市","遵义市","安顺市","铜仁市","毕节市","黔西南市","黔东南市","黔南市"},{"广州市","深圳市","珠海市","汕头市","韶关市","佛山市","江门市","湛江市","茂名市","肇庆市","惠州市","梅州市","汕尾市","河源市","阳江市","清远市","东莞市","中山市","潮州市","揭阳市","云浮市"}};}//合并字符串public String[] addStr(String[] str1,String[] str2) {String[] str=new String[str1.length+str2.length];for (int i = 0; i < str.length; i++) {if(i<str1.length)str[i]=str1[i];elsestr[i]=str2[i-str1.length];}return str;}public static void main(String[] args) {new PersonShow();}
}

java小小工具 对象信息管理相关推荐

  1. java 编程工具_Java开发工具可以促进编程!

    java 编程工具 Java开发人员通常尝试找到快速有效地编写高质量Java代码的方法,以使他们的编程工作变得更轻松. 由于情况发生了变化,因此出现了越来越多的工具. 因此,下面列出了大多数开发人员已 ...

  2. 解析 Java 类和对象的初始化过程

    跳转到主要内容 中国 [ 选择 ] dW 全部内容--------------  AIX and UNIX  Info Mgmt  Lotus  Rational  WebSphere-------- ...

  3. Java基础项目——客户信息管理软件

    目录 前言 本项目目标 一.需求及软件设计结构说明 1.需求说明 1)主菜单 2)添加客户 3)修改客户 4)删除客户 5)客户列表 2.软件设计结构 1)Customer类的设计 2)Custome ...

  4. java 匿名list,java创造匿名对象的两种方法

    在java中有时候需要一些匿名对象的使用.可能有些小伙伴拿还不会创造,其实我们在学习一些方法时都或多或少的接触过.本篇所要讲到的创造匿名对象总结了两种方法,分别是静态工具方法和Lambda表达式,我们 ...

  5. 【Java 虚拟机原理】垃圾回收算法( Java VisualVM 工具 | 安装 Visual GC 插件 | 使用 Java VisualVM 分析 GC 内存 )

    文章目录 一.Java VisualVM 工具安装 Visual GC 插件 二.使用 Java VisualVM 分析 GC 内存 一.Java VisualVM 工具安装 Visual GC 插件 ...

  6. 【Java 虚拟机原理】堆区 | Java VisualVM 工具

    文章目录 一.Java VisualVM 工具 二.堆区 一.Java VisualVM 工具 Java 中提供了一个监控当前设备 Java 程序的工具 Java VisualVM ; 在命令行中执行 ...

  7. 常用 Java Profiling 工具的分析与比较

    相对于静态代码分析,Profiling 是通过收集程序运行时的信息来研究程序行为的动态分析方法.其目的在于定位程序需要被优化的部分,从而提高程序的运行速度或是内存使用效率.收集程序运行时信息的方法主要 ...

  8. Java xml 工具 JDOM 使用详解.

    一, 什么是JDOM工具 在编程中, 我们往往需要一些配置数据,  这些值我们一般不会hardcode在代码中的. 而是写在配置文件. 在Java世界中, 我们通常会把配置变量写在xml文件中. 而x ...

  9. 高效Java编程工具集锦

    Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松.目前,市面上涌现出越来越多的高效编程工具.所以,以下总结了一系列工具列表,其中包含了大多数开发人员已经使用.正在使用或 ...

最新文章

  1. 程序员被质疑跳槽频繁不稳定,随后的一番话令HR哑口无言!
  2. 云平台设计系统,助力业务快速开发
  3. (转载)macOS 解决apue.h不存在的问题
  4. 《App后台开发运维与架构实践》第2章 App后台基础技术
  5. android 半圆滚动菜单,自定义控件:实现半圆滚动菜单效果
  6. 服务器托管常见问题纠纷与解决方法
  7. 迅捷路由器FW325R的无线桥接
  8. 内文广告程序开发中遇到的一个问题
  9. Linux平台下软件推荐及主题图标推荐
  10. spring-rabbitmq Direct reply-to 模式
  11. linux查看当前网卡网速,Linux环境编程:获取网卡的实时网速
  12. 中科院计算机博士论文致谢火了!网友:读完已是泪流满面……
  13. 计算机考研考线代和概率论吗,关于考研数学线代和概率论的暑期复习扫尾建议...
  14. 基础拓扑学笔记(1)——欧拉定理
  15. javaweb实现购物车功能
  16. JavaWeb完整笔记
  17. 可以与eclipse媲美的开源油藏数值模拟器OPM/Flow的安装及使用
  18. 定义C++类对象的方法
  19. RK3288 RK3368 瑞芯微RK系列Android生成OTA差分升级包
  20. 2016年10月13日 星期四 --出埃及记 Exodus 18:24

热门文章

  1. windows 2008r2 系统开机重启出现 系统恢复 的解决方案
  2. 【机器学习】【ICA-2】ICA独立成分分析的原理 + ICA前的预处理(中心化+漂白)
  3. 基于Tushare数据库统计混合型基金前十大重仓股持仓变化
  4. 希尔排序----附图解(C语言)
  5. 一亩三分地 新手上路 95大米 答案 新手入门
  6. 知识图谱——领域知识问答系统简单介绍
  7. Rabin Karp 算法详解及Python实现
  8. 万里长征之测试第一步
  9. Ambassador,云原生应用的“门神”
  10. 【Python学习笔记】1:黑洞数和啤酒问题