System.out.println(s2[i]);
}
}
2、设计一个类Student,类的属性有:
姓名,学号,出生日期,性别,所在系等。
并生成学生类对象数组。
按照学生的姓名将学生排序输出。
使用String类的compareTo方法。
packagejob1;
publicclassStudent{
privateStringname;
privateintnum;
privateStringbirth;
privateStringsex;
privateStringsdept;
publicStudent(){
}
publicStudent(Stringname,intnum,Stringbirth,Stringsex,Stringsdepet){
this.name=name;
this.num=num;
this.birth=birth;
this.sex=sex;
this.sdept=sdept;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicintgetNum(){
returnnum;
}
publicvoidsetNum(intnum){
this.num=num;
}
publicStringgetBirth(){
returnbirth;
}
publicvoidsetBirth(Stringbirth){
this.birth=birth;
}
publicStringgetSex(){
returnsex;
}
publicvoidsetSex(Stringsex){
this.sex=sex;
}
publicStringgetSdept(){
returnsdept;
}
publicvoidsetSdept(Stringsdept){
this.sdept=sdept;
}
}
packagejob1;
importjava.util.Comparator;
importjava.text.CollationKey;
importjava.text.Collator;
publicclassMyCmpimplementsComparator{
publicintcompare(Objectobj1,Objectobj2){
Collatorcollator=Collator.getInstance();
CollationKeykey1=collator.getCollationKey(obj1.toString());
CollationKeykey2=collator.getCollationKey(obj2.toString());
returnpareTo(key2);
}
}
packagejob1;
importjava.util.*;
publicclassTreeText{
publicstaticvoidmain(String[]args){
TreeMapmap=newTreeMap(newMyCmp());
map.put("蒋高登","200818511990-08-03男CS");
map.put("蒋稀文","200818521989-01-11男CS");
map.put("董骏","200818501990-04-05男CS");
Setkeys=map.entrySet();
Iteratorit=keys.iterator();
while(it.hasNext()){
Map.Entrye=(Map.Entry)it.next();
System.out.println(e.getKey()+""+e.getValue());
}
}
}
3、设计一个程序计算2011-05-01日与系统当前日期相差的天数。
packagejob1;
importjava.text.ParseException;
importjava.text.SimpleDateFormat;
importjava.util.Date;
publicclassDays{
publicstaticvoidmain(String[]args)throwsParseException{
Dated1=newDate();
SimpleDateFormatformat=newSimpleDateFormat("yyyy-MM-dd");
Strings="2011-05-01";
Dated2=format.parse(s);
intdays=(int)((d2.getTime()-d1.getTime())/(1000*60*60*24));
System.out.print("2011-05-01日与系统当前时间相差"+days+"天");
}
}
4、使用日历类等相关方法按截图做出一个日历参照书本示例,研究其中代码回顾与复习利用JavaSwing编程。
参考:
以下函数根据输入的年和月计算相应的数字
publicvoidshowCalendar(intyear,intmonth){
Calendarcal=Calendar.getInstance();
cal.set(Calendar.YEAR,year);
cal.set(Calendar.MONTH,month-1);
//计算当前月一共有多少天
intdays=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
//计算当前月的1号为星期几
cal.set(Calendar.DAY_OF_MONTH,1);//设置为1号
intfirstweek=cal.get(Calendar.DAY_OF_WEEK);
。
。
。
。
。
}
packagejob1;
importjava.awt.BorderLayout;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.util.Calendar;
importjavax.swing.*;
importjavax.swing.table.DefaultTableModel;
publicclassCalendarTableextendsJFrameimplementsActionListener{
privateJLabellabel_year=newJLabel("年");
privateJLabellabel_month=newJLabel("月");
privateJComboBoxbox_year=newJComboBox();
privateJComboBoxbox_month=newJComboBox();
privateJButtonbtn=newJButton("确定");
privateJTabletable;
privateStringweek[]={"日","一","二","三","四","五","六"};
privateStringrows[][]=newString[6][7];
publicCalendarTable(){
JPaneljp_north=newJPanel(newGridLayout(1,5));
for(inti=1;i<13;i++)
box_month.addItem(i);
jp_north.add(box_year);
jp_north.add(label_year);
jp_north.add(box_month);
jp_north.add(label_month);
jp_north.add(btn);
table=newJTable(rows,week);
JScrollPanescroll=newJScrollPane(table);
this.add(jp_north,BorderLayout.NORTH);
this.add(scroll);
calendarinit();
btn.addActionListener(this);
box_year.addActionListener(this);
box_month.addActionListener(this);
}
publicvoidactionPerformed(ActionEvente){
Calendarcal=Calendar.getInstance();
intyear=cal.get(Calendar.YEAR);//box_year.getSelectedIndex();
intmonth=box_month.getSelectedIndex();
showCalendar(year,month);
table.setModel(newDefaultTableModel(rows,week));
}
privatevoidcalendarinit(){
Calendarcal=Calendar.getInstance();
box_year.addItem(newInteger(cal.get(Calendar.YEAR)));
cal.set(Calendar.DAY_OF_MONTH,1);
box_month.setSelectedIndex(cal.get(Calendar.MONTH));
showCalendar(Calendar.YEAR,Calendar.MONTH);
}
privatevoidshowCalendar(intyear,intmonth){
Calendarcal=Calendar.getInstance();
cal.set(Calendar.YEAR,year);
cal.set(Calendar.MONTH,month);
intdays=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
cal.set(Calendar.DAY_OF_MONTH,1);
intfirstweek=cal.get(Calendar.DAY_OF_WEEK);
for(inti=0;ifor(intj=0;jrows[i][j]="";
}
}
intline=0;
for(inti=1;iif(i%7==0){
line++;
}
if(firstweek==1){
rows[0][0]="1";
}
if(i>=firstweek-1){
rows[line][i%7]=(i-firstweek+2)+"";
}
}
}
publicstaticvoidmain(Strin