【Calender类】
Calendar类是一个抽象类,它为特定瞬间与一组诸如YEAR
、MONTH
、DAY_OF_MONTH
、
HOUR
等日历字段
之间的转换提供了一些方法,并为操作日历字段(例如获得下星期
的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间
1970年 1月 1日的 00:00:00.000,格里高利历)的偏移量。
-publicstaticCalendargetInstance():
使用默认时区和语言环境获得一个日历。返回的Calendar
基于当前时间,使用
了默认时区和默认语言环境。可用该方法获取日历
例如:
String[]months = {"一月","二月","三月","四月",
"五月","六月","七月","八月",
"九月","十月","十一月","十二月"};
String[]weeks = {"","星期日","星期一","星期二",
"星期三","星期四","星期五","星期六"};
Calendarc = Calendar.getInstance();
//sop(c);
sop(c.get(Calendar.YEAR));
intm = c.get(Calendar.MONTH);//计算机中,用0~11表示一到十二月
sop(months[m]);
sop(c.get(Calendar.DATE));
intw = c.get(Calendar.DAY_OF_WEEK);//计算机中,用1~7表示星期日到星期六
sop(weeks[w]);
【Math类】
public finalclassMath extends Object:
Math
类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函
数。
【Math类中常用的方法】
1、 abs:
返回指定数据的绝对值,该方法有多种重载形式,请参考API文档
如:int a = Math.abs(-11); //a =11
2、 public static double ceil(double a):
返回大于指定数据的最小整数
如:double c = Math.ceil(12.4); //c = 13.0
3、 public static double floor(double a):
返回小于指定数据的最大整数
如:double f =Math.floor(-12.4); //f = -13.0
4、publicstatic doublepow(double a,double b):
返回第一个参数的第二个参数次幂的值。
如:double p = Math.pow(2,3); //p= 8.0
5、 public static double sqrt(double a):
返回正确舍入的double
值的正平方根。
如:double s = Math.sqrt(4); //s= 2.0
6、 public static double random():
返回带正号的 double值,该值大于等于 0.0且小于1.0。返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。第一次调用该方法时,它将创建一个新的伪随机数生成器,与以下表达式完全相同 new java.util.Random之后,新的伪随机数生成器可用于此方法的所有调用,但不能用于其他地方。
如:int n = (int)(Math.random()*10+1);//获取1~10之间的随机数
*Random类的实例用于生成伪随机数流。
-nextInt():
返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的
int
值。nextInt
的常规协定是,伪随机地生成并返回一个int
值。所有 232个可能int
值的生成概率(大致)相同。
如:
Random r = new Random();//创建一个伪随机数生成器
int n = r.nextInt();//获取一个整型随机数
-nextInt(int n):
返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)
和指定值(不包括)之间均匀分布的int
值。nextInt
的常规协
定是,伪随机地生成并返回指定范围中的一个int
值。所有可能的
n个int
值的生成概率(大致)相同。
如:
Random r = new Random();
int n = nextInt(10);//获取一个0~10(包含0不包含10)之间的一个随机数
【Properties类】
public classPropertiesextends Hashtable<Object,Object>:
Properties
类表示了一个持久的属性集。Properties可保存在流中或从流中加
载。属性列表中每个键及其对应值都是一个字符串。Properties类值Map的子类,
所以具备Map集合的特点,而且存储的键值对都是字符串,所以不用定义泛型。
Properties类是集合中和IO技术相结合的集合容器,可以用来建立键值对形式的
配置信息文件。在加载数据时,需要有固定格式:键=值,否则不会读取。
【Properties类中的常用方法】
publicObjectsetProperty(String key,String value):
调用Hashtable的方法put。设置指定键指示的系统属性。返回值是
Hashtable 调用put的结果。
publicStringgetProperty(String key):
用指定的键在此属性列表中搜索属性。如果未找到属性,则此返回null。
publicSet<String>stringPropertyNames():
返回此属性列表中的键集。
publicvoidlist(PrintStream out):
将属性列表输出到指定的输出流。
publicvoidlist(PrintWriter out):
将属性列表输出到指定的输出流。
publicvoidload(InputStream inStream)throwsIOException:
从输入流中读取属性列表(键和元素对)。
publicvoidload(Reader reader)throwsIOException:
按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。
publicvoidstore(Writer writer,String comments)throwsIOException:
以适合使用load(Reader)方法的格式,将此Properties表中的属性列表(键
和元素对)写入输出字符。comments
可用作一个标识注释,注释前会有’#’
符号。同时写入的还有当前系统时间注释
publicvoidstore(OutputStream out,String comments)throwsIOException:
以适合使用load(InputStream)方法加载到Properties表中的格式,将此
Properties表中的属性列表(键和元素对)写入输出流。
例:编写程序可以读取配置文件中的属性信息,并将修改后的属性信息会写到配置中
Propertiesprop = new Properties();
//创建输入流对象,并与配置文件相关联
FilReaderfr = new FileReader("info.txt");
//从输入流中读取属性列表
prop.load(fr);
//修改属性信息
prop.setProperty("03","java007");
//创建输出流对象,并与配置文件相关联
fw= new FileWriter("info.txt");
//将属性列表写入输出流对象
prop.store(fw,"lws");
prop.list(System.out);
System.out.println("修改成功!!!");