其他API
来源:互联网 发布:峰会策划知乎 编辑:程序博客网 时间:2024/06/06 03:58
Api中的其他常见对象,这些对象都具备着一些小特点:
1, System类:
不可以被实例化。没有构造函数。
该类中的方法都是静态的。
常见方法:exit().cunrrentTimeMillis();gc(); getProperties();
getProperties方法是用来获取系统属性的。
系统属性信息:就是程序在运行时获取到jvm以及所在操作系统的一些固有信息。
这些信息获取后,为后面的程序运行提供了数据。
public static void systemMethodFemo(){
//将系统中的属性信息获取到存储到了properties集合中。
Propertiesprop=System.getProperties();
//想要获取集合中的信息。
//可以使用集合中的stringPropertyNames():先将其转成set集合。而且这个方法已经指定了具体的类型。
Set<String>nameSet=prop.stringPropertyNames();
for(Stringname:nameSet){
String value=prop.getProperty(name);
System.out.println(name+”::”+value);
}
}
//获取系统中指定的信息。
public static void systemMethodDemo2(){
Properties prop=prop.getProperty(“os.name”);
System.out.println(value);
}
System类的小应用。
System.getProperty(“line.separator”):获取不同系统平台中的换行符。
2,Runtime:
代表应用程序运行时的对象。该对象不需要创建,直接通过getRuntime获取即可,因为该Runtime类是可以将应用程序和运行环境相结合的类。
该类没有构造函数。可是我们发现,该类中居然有特有的非静态方法,说明它不让其他程序创建该类对象,肯定会给我们提供一个方法获取它的对象。而且这个方法肯定是静态的。返回值一定Runtime
这个方法就是getRuntime
注意:该类就是用单例设计模式完成的。
Runtime r=Runtime.getRuntime();
Processp=r.exec(“notepad.exe c:\\other.txt”);
Thread.sleep(4000);
p.destroy();
3,Math:
方法都是静态的
//大于参数的最小整数。
double d1=Math.ceil(12.34)//13
//小于参数的最大整数。
double d2=Math.ceil(12.34)//12
//四舍五入
doubled3=Math.round(12.54);//13
Math.pow(10,3)//1000
For(inti=0;i<10;i++){
double d=Math.random()*10;//随机数
double d=Math.ceil(Math.random()*10);
double d=Math.floor(Math.random()*10+1);
int d=(int)(Math.random()*10+1);
}
随机数对象
Random r=newRandom();
for(int x=0;x<10;x++){
int num=r.nextInt(10)+1;//获取下一个随机整数
}
4,Date
日期类
//获取当前日期时间对象。直接new Date即可
Date d=newDate();
日期对象和毫秒值之间的转换:
日期对象之间要进行基本运算,需要转成具体的毫秒数值才可以
如果知道一个毫秒值,如何获取该种年与日呢?这时就需要将该毫秒值封装成Date对象。
因为有了对象后就可以通过方法来获取。
//将日期对象转成毫秒值。使用的是Date对象中的getTime();
Date d=new Date();
Long time=d.getTime();
//将毫秒值转成日期对象
//通过Date构造函数完成
//通过Date类的setTime方法设置一个指定的毫秒值
Date d2=new Date(13438759030l);//要加L
Date d3=new Date();
d3.setTime(13438759030l);
*将日期对象转成指定格式的日期字符串 格式化
使用到了DateFormat对象中的format方法。
Public static void dateFormate(){
1, 获取DateFormat对象。该类的静态方法getDateInstance();该方法返回的是日期默认的格式化对象
Date d=newDate();
//默认风格。就是MEDIUM
DateFormatdateFormat=DateFormat.getDateInstance();
//使用指定风格
dateFormat=DateFormat.getDateInstance(DateFormat.SHORT); //LONG FULL
//使用指定风格,包含着日期和时间。
dateFormate=DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);
//想要将该日期或者时间转换成自定义风格。如xxx#mm# 2012/8/21
dateFormat=newSimpleDateFormate(“yyyy/MM/dd HH:mm:ss”);
Stringstr_date=dateFormate.format(d);
System.out.println(d);
System.out.println(str_date);
}
*将日期字符串转成日期对象
为了获取其中的日期或者时间字段方便。
解析使用的是DateFormat类中的parse方法
public static void deteFormat() throwsParseException{
//日期字符串。
String str_date=“2012/3/2“;
//定义一个日期格式化对象。要解析一个具体格式的日期字符串,必须要让该日期格式对象具备解析该格式的能力
DateFormatdateFormat=DateFormat.getDateInstance();
dateFormat=newsimpleDateFormat(“yyyy/MM/dd”);
Datedate=dateFormat.parse(str_date);
System.out.println(date);
}
计算两个时间之间的相隔天数
public static void main(String[] args) throwsParseException {
String d1="2012/3/4";
String d2="2012/5/4";
DateFormat d=DateFormat.getInstance();
d=new SimpleDateFormat("yyyy/MM/dd");
Date da1=d.parse(d1);
Date da2=d.parse(d2);
long t1=da1.getTime();
long t2=da2.getTime();
long t=Math.abs(t1-t2);
System.out.println(t/1000/60/60/24);
}
Calendar:日历类 在util包中
java.util 包抽象类,通过静态方法static Calendar getInstance();,返回本类实例对象
构造函数供子类使用。
获取方法
import java.util.*;
import java.text.*;
class CalendarDemo
{
public static void main(String[] args)
{
Calendar c=Calendar.getInstance();
//sop(c);
//查表法
String[] mons = {"一月","二月","三月","四月","五月","六月",
"七月","八月","九月","十月","十一月","十二月"};
String[] weeks = {"","星期日","星期一","星期二","星期三",
"星期四","星期五","星期六"};
intindex = c.get(Calendar.MONTH);//使用查表法获取大写的月份
intindex1= c.get(Calendar.DAY_OF_WEEK);//使用查表法获取大写的星期数
sop(c.get(Calendar.YEAR)+"年");//打印年
sop(mons[index]);//打印月份
sop(c.get(Calendar.DAY_OF_MONTH)+"日");//打印日
sop(weeks[index1]);//打印星期.
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
修改方法
add(int field, int amount)//根据日历的规则,为给定的日历字段添加或减去指定的时间量
指定方法
set(int field, int value)//将给定的日历字段设置为给定值
set(int year, int month, int date)
set(int year, int month, int date, int hourOfDay, int minute)
set(int year, int month, int date, inthourOfDay, int minute, int second)
例
Calendar c = Calendar.getInstance();
c.set(2013,2,1);//指定年与日
c.add(Calendar.DAY_OF_MONTH,-1);//月份减一
intnum = c.get(Calendar.DAY_OF_MONTH);//获取
sop(num);
练习:获取任意年的2月有多少天?
Public Calendar getDay(int year){
Calendar c=Calendar.getInstance();
c.set(year,2,1);
c.add(Calendar.DAY_OF_MONTH,-1);
return c;
}
- 其他API
- 其他API
- Java其他API介绍
- API其他对象类
- 其他类API
- React其他API
- hook其他进程的API
- hook其他进程的API
- 黑马程序员_day21_其他api
- hook其他进程的API
- 黑马程序员--API其他对象
- API其他函数 ,system date,..
- (其他1)API参考
- JavaSE-String API 其他功能
- [ElasticStack系列]es其他api
- java-17-其他对象API
- 01-其他对象API(System类)123 02-其他对象API(Runtime类) 03-其他对象API(Math类)
- API操作其他程序中的按钮
- JDK1.5新特性
- ios 监听app从后台恢复到前台
- 进程和线程的区别
- android 对话框
- eclips相关
- 其他API
- ios 调用系统发短信以及打电话功能
- CF330 C. Purification 认真想后就成水题了
- 国内HTML5前端开发框架汇总
- 【教你在一个地方放2个同名文件夹】
- 注解
- wx.BoxSizer布局管理
- java socket 多线程网络传输多个文件
- 【Kissy Waterfall】静态调用