System类

 package p1;

 import java.util.Properties;
import java.util.Set; public class SystemDemo { private static final String LINE_SEPARATOR = System.getProperty("line.separator"); //设置换行 public static void main(String[] args) {
/*
* System:类中的方法和属性都是静态的。
* 常见方法:
* long currentTimeMills();获取当前时间的毫秒值。(返回当前时间与协调世界时间1970年1月1日午夜之间的时间差)
*/
// demo1();
demo2();
// demo3(); } public static void demo3() {
System.setProperty("age", "28");
System.setProperty("name", "张三"); System.out.println(System.getProperty("age"));
System.out.println(System.getProperty("name")); System.out.println("hello"+LINE_SEPARATOR+"woorld");
}
/*
* demo3运行结果:
* 28
张三
hello
woorld */ public static void demo2() {
/*
* Properties getProperties() 获取系统的属性信息,并存储到Properties集合中
*
* Properties集合中存储都是String类型的键和值 //所以定义Properties类型的变量时不必带泛型
* 最好使用它自己的存储和取出的方法来完成元素的操作
*/
Properties prop = System.getProperties();
// System.out.println(prop); Set<String> nameSet = prop.stringPropertyNames(); for (String name : nameSet)
{
String value = prop.getProperty(name); System.out.println(name+"::"+value);
}
} public static void demo1() {
long l1 = System.currentTimeMillis();
System.out.println(l1);//返回1473476846438 毫秒数
System.out.println(l1/1000/60/60/24); //返回 17054 天数 // code...
long l2 = System.currentTimeMillis();
System.out.println(l2-l1); //返回的是code...代码执行所用时间
} }

Runtime类

 package p1;

 import java.io.IOException;

 public class RuntimeDemo {

     public static void main(String[] args) throws IOException, InterruptedException {
/*
* 每一个Java程序都有一个Runtime类案例,使应用程序能够与其运行的环境相连,可以通过getRuntime方法获取当前运行时。
* 应用程序不能创建自己的Runtime类案例。
*/ /*
* Runtime:没有构造方法摘要,说明该类不可以创建对象
* 又发现还有非静态的方法,说明该类应该提供静态的返回该类对象的方法
* 而且只有一个,说明Runtime类使用了单列设计模式。
*/ Runtime r = Runtime.getRuntime(); // Process p = r.exec("notepad.exe");//打开notep
Process p = r.exec("notepad.exe D:\\1.txt");//打开notepad,在用notepad打开TXT
//r.exec("软件路径 文件路径");
Thread.sleep(5000);
p.destroy();//杀掉进程 5s后notepad关闭 } }

Math类

 package p1;

 import java.util.Random;

 public class MathDemo {

     public static void main(String[] args) {
/*
* Math:提供了操作数学运算的方法。都是静态的。
*
* 常用方法:
* ceil():返回大于参数的最小整数
* floor():返回小于参数的最大整数
* round():返回四舍五入的整数
* pow(a,b):a的b次方
* random():返回带正号的 double 值,该值大于等于 0.0 且小于 1.0
*/ // demo();
RandomDemo(); } public static void RandomDemo() {
Random r = new Random(); for (int i=0; i<10; i++)
{
double d = r.nextDouble();//与Math.random()方法类似
System.out.println(d);
/*
* 0.013546684829438105
0.08058717380462299
0.25156348709107823
0.8149201340850071
0.37986882841498293
0.23718135066250312
0.6348939629694422
0.9508777684076484
0.8231478486704749
0.4605800387044423
*/
} for (int i=0; i<10; i++)
{
int d1 = r.nextInt(10); //随机返回0~10(不包含)间任意一个int值。
System.out.println(d1); }
} public static void demo() {
double d1 = Math.ceil(12.53);
double d2 = Math.floor(12.53);
double d3 = Math.round(12.13);
double d4 = Math.pow(10, 3); System.out.println(d1); //13.0
System.out.println(d2); //12.0
System.out.println(d3);//12.0
System.out.println(d4);//1000.0 for (int i=0; i<10; i++)
{
double d = Math.random();
System.out.println(d);
/*
* 0.3027275615429248
0.5238495879790577
0.987839818675654
0.6749156933585441
0.8474524363649824
0.412124228077851
0.009324944666969759
0.9136918707539762
0.41197917556520036
0.3277617281962496
*/
}
} }

Date类

 package p1;

 import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class DateDemo { public static void main(String[] args) throws ParseException {
// method_demo1();
// method_demo2();
method_demo3(); } public static void method_demo3() throws ParseException { /*
*将日期格式的字符串-->日起对象
* 使用的是DateFormat类中的parse()方法。
*/ String str = "2016年9月10日 星期六";
String str1 = "2016--09--10 02:22:08"; DateFormat dateformat = DateFormat.getDateInstance(DateFormat.FULL);//格式与日期格式要对应
DateFormat dateformat1 = new SimpleDateFormat("yyyy--MM--dd hh:mm:ss"); Date date = dateformat.parse(str);
System.out.println(date);//Sat Sep 10 00:00:00 CST 2016 Date date1 = dateformat1.parse(str1);
System.out.println(date1);//Sat Sep 10 02:22:08 CST 2016
} public static void method_demo2() {
/*
* 对日期对象进行格式化
* 将日期对象-->日期格式的字符串
* 使用DateFormat类中的format方法。
*/ Date date = new Date(); //获取日期格式对象,有FULL,LONG,SHORT,MEDIUM(默认)格式。不标明就是默认格式
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL);
// System.out.println(dateFormat); //java.text.SimpleDateFormat@ef7951d7
String str = dateFormat.format(date);
System.out.println(str);//2016年9月10日 星期六 DateFormat dateFormat1 = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.LONG);
String str1 = dateFormat1.format(date);
System.out.println(str1); //2016年9月10日 星期六 下午02时14分18秒 //如果风格想要自定义呢?
DateFormat dateFormat2 = new SimpleDateFormat("yyyy--MM--dd hh:mm:ss");
String str2 = dateFormat2.format(date);
System.out.println(str2); //2016--09--10 02:22:08 } public static void method_demo1() { /*
* 日期对象和毫秒值之间的转换
*
* 毫秒值-->日期对象
* 1.通过Date对象的构造方法 new Date(timeMills);
* 2.还可以通过Settime设置
*
* 日期对象-->毫秒值
* getTime方法
*/ long time = System.currentTimeMillis();
System.out.println(time); // Date date = new Date(); //将当前日期和时间封装成date对象。
System.out.println(date); //Sat Sep 10 13:39:21 CST 2016 Date date1 = new Date(1473485640659l); //将指定毫秒值封装成date对象。
System.out.println(date1); //Sat Sep 10 13:34:00 CST 2016 Date date2 = new Date();
date2.setTime(1473485640659l);
long l = date2.getTime();
System.out.println(l); //
} }
 package p1;

 import java.text.DateFormat;
import java.text.ParseException;
import java.util.Date; /*
* “2012-3-17”到“2012-4-6”间有多少天
*
* 思路:
* 日期格式字符串-->日期对象-->获取毫秒值-->相减
*/
public class DateTest { public static void main(String[] args) throws ParseException { String str_date1 = "2012-3-17";
String str_date2 = "2012-4-6"; test(str_date1,str_date2); } public static void test(String str_date1, String str_date2) throws ParseException {
DateFormat dateformat = DateFormat.getDateInstance();//对应格式 Date date1 = dateformat.parse(str_date1);
Date date2 = dateformat.parse(str_date2); long time1 = date1.getTime();
long time2 = date2.getTime(); long time = Math.abs(time1-time2); int day = getDay(time);
System.out.println(day); } public static int getDay(long time) {
int day = (int)(time/1000/60/60/24);
return day;
} }

Calendar类

 package cn.itcast.p1.otherapi;

 import java.util.Calendar;

 public class CalendarDemo {

     public static void main(String[] args) {
Calendar c = Calendar.getInstance();
System.out.println(c);
/*电脑当前时间的日历
*
* java.util.GregorianCalendar[time=1473493014690,areFieldsSet=true,
areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",
offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,
minimalDaysInFirstWeek=1,ERA=1,YEAR=2016,MONTH=8,WEEK_OF_YEAR=37,WEEK_OF_MONTH=2,DAY_OF_MONTH=10,
DAY_OF_YEAR=254,DAY_OF_WEEK=7,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=3,HOUR_OF_DAY=15,
MINUTE=36,SECOND=54,MILLISECOND=690,ZONE_OFFSET=28800000,DST_OFFSET=0] */ showDate(c); showDays(2016);//判断2016的二月有多少天 } public static void showDays(int i) {
Calendar c = Calendar.getInstance();
c.set(i, 2, 1); c.add(Calendar.DAY_OF_MONTH, -1);
showDate(c);
} public static void showDate(Calendar c) { int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH)+1;
int day = c.get(Calendar.DAY_OF_MONTH);
int week = c.get(Calendar.DAY_OF_WEEK);
int hour = c.get(Calendar.HOUR_OF_DAY);
int min = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND); System.out.println(year+"年"+month+"月"+day+"日"+getWeek(week)+" "+hour+":"+min+":"+second);
} public static String getWeek(int week) {
String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"}; return weeks[week];
} }

【Java学习笔记】其他对象API的更多相关文章

  1. Java学习笔记五 常用API对象一

    常用API:字符串操作:String类,StringBuffer类,StringBulider类 字符串是最重要的数据类型之一,处理字符串也是一种语言的基本工作. 1.String类: public ...

  2. Java学习笔记七 常用API对象三

    一.泛型:简单说就是对对象类型进行限定的技术 public class GenericDemo { public static void main(String[] args){ /*泛型作为1.5版 ...

  3. Java学习笔记六 常用API对象二

    1.基本数据类型对象包装类:见下图 public class Test { public static void main(String[] args){ Demo(); toStringDemo() ...

  4. Java学习笔记之对象的复制和克隆

    假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short, ...

  5. Java学习笔记5(API)

    Java API API(Application Programming Interface)指的是应用程序编程接口. String类 String初始化有两种,一个是使用字符串常量初始化一个Stri ...

  6. java学习笔记之对象序列化

    1.简述 java对象序列化就是将对象编程二进制数据流的一种方法,从而实现对对象的传输和存储 2.作用 java是门面向对象编程语言,即一切皆对象,但是java对象只能存在于jvm中,一旦jvm停掉那 ...

  7. Java学习笔记--面对对象OOP

    面向对象编程 OOP 面向对象&面向过程 面向对象编程的本质:以类的方式组织代码,以对象的方法组织数据 面向对象编程的三大特征: 封装 继承 多态 方法 静态方法 通过 static 关键词说 ...

  8. java学习笔记-8.对象的容纳

    1.Iterator(迭代器)和Enumeration(枚举类),都是用来遍历集合的,他们都是接口.区别是Enumeration只能读取集合的数据,而Iterator可以对数据进行删除,Iterato ...

  9. Java学习笔记day08_day09_对象实例化_private_this

    1.类与对象 类就是一个模版. 对象的实例化就是根据模版类, 使用new关键字创建实际的对象. 2.类的定义及创建对象 类的定义格式: public class 类名{ //属性(变量) 数据类型 变 ...

  10. java学习笔记-01.对象入门

    1.面向对象编程简称是OOP. 2.继承是通过 extends关键字实现的,接口是通过implements关键字实现的. 3.public:意味着后续的定义任何人均可使用. private:意味着除了 ...

随机推荐

  1. XidianOJ 1057 卡尔的技能

    题目描述 dota中的英雄卡尔的技能说明如下,他拥有3种不同的元素(冰,雷,火),每次他需要释放技能的时候,他要先选择3次元素来决定释放技能的类型(比如,他可以选择火+火+火或冰+雷+火等等),生成技 ...

  2. 编写一个make

    一.简介 How to make a "make"?在进行实现前,应该先对make有一个最基本的了解.这里稍作简介:当一个程序的源文件较少时,对其进行修改并重新生成可执行文件并不复 ...

  3. Oracle并行执行特性应用初探

    1.      序 在历史数据转出测试过程中,通过不断的优化,包括SQL调整和数据库调整,从AWR中看到,基本上难以进行更多的性能提升,于是准备试试并行执行的特性,从这个任务的特点来分析,也比较适合采 ...

  4. AS3 转 Java

    不错,我就是as3转java的程序猿. 大概两年前加过as3的QQ群里,有很多群友说as3发展前景不好,很多要转语言.我当时也想转,一直苦于没机会.现在机会终于来了... 首先说明一点,as3并不会像 ...

  5. 如何使用Javascript判断浏览器终端设备

    WEB开发中如何通过Javascript来判断终端为PC.IOS(iphone).Android呢? 可以通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端 var ...

  6. app跳转openURL,兼容方法

    - (void)openScheme:(NSString *)scheme {   UIApplication *application = [UIApplication sharedApplicat ...

  7. oracle 身份证校验函数

    1.正则表达式写法: CREATE OR REPLACE FUNCTION Func_checkidcard (p_idcard IN VARCHAR2) RETURN INT IS v_regstr ...

  8. shell获取ip

    ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"

  9. C# DataGridView控件清空数据完美解决方法

    C# DataGridView控件绑定数据后清空数据在清除DataGridview的数据时: 1.DataSource为NULL(DataGridView.DataSource= null;)这样会将 ...

  10. Xcode8 安装插件

    关闭Xcode 一.进入https://github.com/inket/update_xcode_plugins下载 二.打开终端,输入sudo gem install update_xcode_p ...