一.计算题(共3 题,100.0分)
1
枚举类的应用。
(1)创建一个Week类的枚举类型,包含这些实例常量:Monday,Tuesday, Wednesday,Thursday,Friday,Saturday,Sunday。
(2)定义一个主类,创建一个Week类的对象,并进行输出。再调用values()方法对Week类的所有实例对象进行遍历输出。结果图如下所示。
package ex7;
enum Week {
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday;
}
public class WeekDemo {
public static void main(String[] args) {
Week wk1 = Week.Monday;
System.out.println("x=" + wk1);
System.out.println("Week枚举类型的所有取值为:");
for (Week wk : Week.values()) {
System.out.println(wk);
}
}
}
package ex7;
enum Week {
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday;
}
public class WeekDemo {
public static void main(String[] args) {
Week wk1 = Week.Monday;
System.out.println("x=" + wk1);
System.out.println("Week枚举类型的所有取值为:");
for (Week wk : Week.values()) {
System.out.println(wk);
}
}
}
2
对第1题进行改进。
(1)对Week类的枚举类型的实例对象指定一个实例值。如:Monday("星期一"),Tuesday("星期二"), Wednesday("星期三"),Thursday("星期四"),Friday("星期五"),Saturday("星期六"),Sunday("星期日");并定义一个属性变量name,一个带参的构造方法对name属性变量赋值;重写toString()方法返回name的值。
(2)定义一个主类,创建一个Week类的对象,并进行输出。再对Week.valueOf("Tuesday")的值进行输出。调用values()方法对Week类的所有实例对象进行遍历输出。结果图如下所示。
package ex7;
enum Week1 {
Monday("星期一"), Tuesday("星期二"), Wednesday("星期三"), Thursday("星期四"), Friday("星期五"), Saturday("星期六"), Sunday("星期日");
private String name;
Week1(String name) {
this.name = name;
}
public String toString() {
return this.name;
}
}
public class WeekDemo1 {
public static void main(String[] args) {
Week wk1 = Week.Monday;
System.out.println("x=" + wk1);
Week wk2 = Week.valueOf("Tuesday");
System.out.println("Week.valueOf(\"Tuesday\")" + "=" + wk2);
System.out.println("Week枚举类型的所有取值为:");
for (Week wk : Week.values()) {
System.out.println(wk);
}
}
}
3
创建一个语言为en,国家为US的一个Locale对象,并调用相应的方法输出此对象的语言编码、语言名称、国家编码与国家名称信息。再调用getDefault()方法获取默认信息的Locale对象,并输出它的语言编码、语言名称、国家编码与国家名称信息。输出结果图如下所示。
package ex7;
import java.util.Locale;
public class NumberFormatDemo {
public static void main(String[] args) {
Locale usLocale = new Locale("en", "US");
System.out.println(usLocale + "的local对象为:" + usLocale);
System.out.println(usLocale + "的语言编码为:" + usLocale.getLanguage());
System.out.println(usLocale + "的语言名称为:" + usLocale.getDisplayLanguage());
System.out.println(usLocale + "的国家编码为:" + usLocale.getCountry());
System.out.println(usLocale + "的国家名称为:" + usLocale.getDisplayCountry());
System.out.println("----------------------------------");
Locale locale = Locale.getDefault();
System.out.println("默认的Locale对象信息为:");
System.out.println("default的local对象为:" + locale);
System.out.println("default的语言编码为:" + locale.getLanguage());
System.out.println("default的语言名称为:" + locale.getDisplayLanguage());
System.out.println("default的国家编码为:" + locale.getCountry());
System.out.println("default的国家名称为:" + locale.getDisplayCountry());
}
}