黑马程序员 java 基础 毕向东 面向对象 常用类 System Math Property Calendar Date Runtime

时间:2023-02-16 16:55:02
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 黑马程序员 java 基础 毕向东 面向对象 常用类 System Math Property Calendar Date  Runtime

1  System

package day18OtherClass;

import java.util.Properties;
import static java.lang.System.*;
public class SystemDemo {
/*获取系统属性信息
* System 类中的方法和属性都是静态的
* out :标准输出 默认是控制台
* in :标准输入了 默认键盘
* Properties getProperties()
* */
public static void main(String[] args) {
Properties p=System.getProperties();

System.setProperty("amykey","cuiui");
//因为Properties是HashTable 的子类
//也就是Map集合的子类对象
//就可以通过map的方法去除该集合中的元素
//该集合存储的都是字符串没有泛型定义
//Set<String> stringPropertriesNames()


//获指定属性信息
String osname=System.getProperty("os.name");
out.println("osname:"+osname);
//获取所有属性信息
for(Object o:p.keySet()){
String v=(String)p.get(o);
System.out.println("key:"+o.toString()+"--v:"+v);
}

//如何在系统中自定义系统信息呢
System.setProperty("amykey","cuiui");

//在jvm 启动时。动态加载一下属性信息


}

}

2Runtime

package day18OtherClass;
import static java.lang.Runtime.*;

import java.io.IOException;
public class RuntimeDemo {
/*
* 该类没有提供构造函数
* 说明不能new 对象
* 那么会想到该类的中的方法是静态的
* 发现该类还有非静态方法
*
* 说明该类会提供方法获取本来对象
* 而且方法是静态的的
*
* 由这个特点可以看出该类使用了单例设计模式
* 该方法是:static Runtime getRuntime()
* */
public static void main(String[] args) {
Runtime r=getRuntime();
Process p = null;
try {
// p=r.exec("write.exe");
p=r.exec("notepad.exe SystemDemo.java");
} catch (IOException e) {
e.printStackTrace();
}
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("--------");
p.destroy();
System.out.println("--------");
}

}

3Date

package day18OtherClass;

import java.util.Date;
import java.text.SimpleDateFormat;
import static java.lang.System.*;
public class DateDemo {
/*
* */
public static void main(String[] args) {
Date d=new Date();
out.println("d:"+d);
//打印的时间看不懂。希望有些格式
//将格式封装在SimpleDateFormat对象中,调用format指定对象
SimpleDateFormat sdf=new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("MM-dd-HH-mm-ss-z");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("MM-dd HH:mm:ss");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("MM月dd日");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("HH时mm分ss秒z");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("月d日H时m分s秒z");
System.out.println(sdf.format(d));
sdf=new SimpleDateFormat("w");
System.out.println("年中的周数:"+sdf.format(d));
sdf=new SimpleDateFormat("W");
System.out.println("月份中的周数 :"+sdf.format(d));
sdf=new SimpleDateFormat("a");
System.out.println("Am/pm 标记:"+sdf.format(d));
sdf=new SimpleDateFormat("E");
System.out.println("星期中的天数 "+sdf.format(d));
}

}

4Calendar

package day18OtherClass;

import java.util.Calendar;
/*
* 获取任意一年的二月有多少天
* 思路:根据指定时间设置年
* c.set(year,2,1)
c.add(Calendear.DAY_OF_MONTH,-1)
3月1往前推一天,就是2月的最后一项

获取昨天的这个时刻
*/
import static java.util.Calendar.*;
public class CalendarDemo {
/*
*
* */
public static void main(String[] args) {
//printCal();
for(int i=2000;i<2020;i++){
getFebruaryDays(i);
}
}
static int getFebruaryDays(int year){
Calendar c=Calendar.getInstance();
c.set(year,2,1);
c.add(DAY_OF_MONTH,-1);
int day=c.get(Calendar.DAY_OF_MONTH);
System.out.println(year+"年2月有"+day+"天");
return day;

}
static void printCal(){
Calendar c=Calendar.getInstance();
//System.out.println(c);
//c.set(2012, 1, 2);
//c.add(Calendar.YEAR, -3);
//c.add(Calendar.MONTH, -3);
c.add(Calendar.DAY_OF_MONTH, -3);
int year=c.get(YEAR);
int month=c.get(MONTH);
int dayOfMonth=c.get(DAY_OF_MONTH);
int dayOfWeek=c.get(DAY_OF_WEEK);
int weekOfMonth=c.get(WEEK_OF_MONTH);
int weekOfYear=c.get(DAY_OF_YEAR);
int hour=c.get(HOUR);
int hourOfDay=c.get(HOUR_OF_DAY);
int min=c.get(MINUTE);
int sec=c.get(SECOND);
System.out.println("year:"+year+
"\nmonth 从 0月开始计算:"+month+
"\ndayOfMonth:"+dayOfMonth+
"\ndayOfWeek 周7第一天:"+dayOfWeek+
"\nweekOfMonth:"+weekOfMonth+
"\nweekOfYear:"+weekOfYear+
"\nhour 12时:"+hour+
"\nhourOfDay 24时:"+hourOfDay+
"\nmin:"+min+
"\nsec:"+sec);
int mon=Calendar.MONTH;
System.out.println(mon);
mon=c.get(Calendar.MONTH);
System.out.println(mon);
}
}



5Math

package day18OtherClass;
import static java.lang.Math.*;
import static java.lang.System.*;

import java.util.Random;

public class MathDemo {

/*
* ceil返回大于指定数据 的最小整数
* floor 返回小于指定数据的最小整数
* round 四舍五入
* pow 幂运算
* random 随机数(0 到 1 之间 包含 0)
*
*
* 联系:给定一个小数
* 保留后两位
* */
public static void main(String[] args) {
out.println(ceil(16.3));
out.println(ceil(-16.3));
out.println(ceil(-16.7));


out.println(floor(16.3));
out.println(floor(-16.3));
out.println(floor(-16.7));


out.println(round(-16.7));
out.println(round(-16.1));
out.println(round(16.1));
out.println(round(16.7));


out.println(pow(2,3));


out.println(random());
Random r=new Random();
for (int i = 0; i < 10; i++) {
System.out.println(r.nextInt(10));
}
}
static void getTwoDec(){
double d=3242.2324;

}

}