45.黑马程序员-其他对象
来源:互联网 发布:linux snmpwalk 安装 编辑:程序博客网 时间:2024/04/29 06:38
------- android培训、java培训、期待与您交流! ----------
一、System- System:描述系统 一些 信息。类中的方法和属性都是静态的.
- out:标准输出,默认是控制台。
- in:标准输入,默认是键盘。
- 获取系统信息:Properties getProperties(),是Hashtable的子类,也就是Map集合的之类对象。
- 可以使用Map的方法取出该集合中的元素,并且返回的是双列集合。该集合中存储的都是字符串,没有泛型定义。
- 举例: Properties prop = System.getProperties();
- 获取所有信息
- for(Object obj : prop.keySet())
- {
- String value = (String)prop.get(obj);
- System.out.println(obj+"::"+value);
- }
- 获取指定属性信息,比如获取操作系统名。
- String value = System.getProperty("os.name");
- Sop("value="+value);
- 在系统中自定义一些特有信息
- System.setProperty("mykey","myvalue");
- 在JVM启动时,动态加载一些属性信息,
- String v = System.property("haha");
- Systrm.out.println("v="+v);
- 这个类使Java应用程序和所运行的系统环境相连接,每个Java应用程序都有一个Runtime类实例。可以通过getRuntime方法获取当前运行时。但是应用程序不能创建Runtime实例。
- 类Runtime不能创建实例,但是方法也不是static的,获取Runtime对象是通过一个方法(单例):static Runtime getRuntime(),这个方法返回与当前Java应用程序相关的运行时对象。
- 打开一个程序
Process
exec(String command)
在单独的进程中执行指定的字符串命令。- 例1-Runtime r = Runtime .getRuntime(); r.exec("c:\\winmine.exe");打开扫雷程序 。
- 例2- Runtime r = Runtime .getRuntime(); r.exec("c:\\notepad.exe systemDemo.java");用记事本打开 systemDemo.java文件。
- 类Date在java.util包中, 是一个个日期类,对日期和时间进行了描述。
- 类Date表示特定的瞬间,精确到毫秒。
- 构造方法有两个:Date()、Date(long date)。
- 类Date中的方法太少,可以在API中“另请参见”里面找相关类。比如DateFormat是个抽象类,可以使用它的子类SimpleDateFormat中的方法。
- SimpleDateFormat 类
- 日期格式化类
- 构造方法: SimpleDateFormat (String patten)//用给定的模式和默认语言环境的日期格式符号构造。
- patten 这个模式
- 举例
- 1.Date d = new Date(); //创建一个Date对象。
- 2.SimpleDateFormat sdf = new SimpleDateFormat(yyyy年MM月dd日) ;//将模式封装到SimpleDateFormat对象中。
- 3.String time = sdf.format(d);//调用format方法 让模式 格式化这个Date对象。
- Calendar类(转)
- 日历类
Calendar
类是一个抽象类,它为特定瞬间与一组诸如YEAR
、MONTH
、DAY_OF_MONTH
、HOUR
等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。在书上看到一个挺好玩的代码,通过这个代码浅浅的研究了下java中的Calendar类
输出的结果是:
PS:为了学习和理解方便,我将时间调回2011年,因为2012年刚好1月1号刚好是周日。
字段操作:
三种:set(),add(),roll();
set(f, value)
将日历字段f
更改为value
。此外,它设置了一个内部成员变量,以指示日历字段f
已经被更改。尽管日历字段f
是立即更改的,但是直到下次调用get()
、getTime()
、getTimeInMillis()
、add()
或roll()
时才会重新计算日历的时间值(以毫秒为单位)。因此,多次调用set()
不会触发多次不必要的计算。使用set()
更改日历字段的结果是,其他日历字段也可能发生更改,这取决于日历字段、日历字段值和日历系统。此外,在重新计算日历字段之后,get(f)
没必要通过调用set
方法返回value
集合。具体细节是通过具体的日历类确定的。示例:假定
GregorianCalendar
最初被设置为 1999 年 8 月 31 日。调用set(Calendar.MONTH, Calendar.SEPTEMBER)
将该日期设置为 1999 年 9 月 31 日。如果随后调用getTime()
,那么这是解析 1999 年 10 月 1 日的一个暂时内部表示。但是,在调用getTime()
之前调用set(Calendar.DAY_OF_MONTH, 30)
会将该日期设置为 1999 年 9 月 30 日,因为在调用set()
之后没有发生重新计算。个人建议先跳过规则看下示例,然后再回过来理解。
add(f, delta)
将delta
添加到f
字段中。这等同于调用set(f, get(f) + delta)
,但要带以下两个调整:Add 规则 1。调用后
f
字段的值减去调用前f
字段的值等于delta
,以字段f
中发生的任何溢出为模。溢出发生在字段值超出其范围时,结果,下一个更大的字段会递增或递减,并将字段值调整回其范围内。Add 规则 2。如果期望某一个更小的字段是不变的,但让它等于以前的值是不可能的,因为在字段
f
发生更改之后,或者在出现其他约束之后,比如时区偏移量发生更改,它的最大值和最小值也在发生更改,然后它的值被调整为尽量接近于所期望的值。更小的字段表示一个更小的时间单元。HOUR
是一个比DAY_OF_MONTH
小的字段。对于不期望是不变字段的更小字段,无需进行任何调整。日历系统会确定期望不变的那些字段。此外,与
set()
不同,add()
强迫日历系统立即重新计算日历的毫秒数和所有字段。示例:假定
GregorianCalendar
最初被设置为 1999 年 8 月 31 日。调用add(Calendar.MONTH, 13)
将日历设置为 2000 年 9 月 30 日。Add 规则 1 将MONTH
字段设置为 September,因为向 August 添加 13 个月得出的就是下一年的 September。因为在GregorianCalendar
中,DAY_OF_MONTH
不可能是 9 月 31 日,所以 add 规则 2 将DAY_OF_MONTH
设置为 30,即最可能的值。尽管它是一个更小的字段,但不能根据规则 2 调整DAY_OF_WEEK
,因为在GregorianCalendar
中的月份发生变化时,该值也需要发生变化。以下是代码,书上的代码及注释+我自己的理解和调试观察。
作者:FreeAquar出处:http://www.cnblogs.com/FreeAquar/
由于调用Calendar.MONTH和Calendar.DAY_OF_WEEK返回的值不是我们希望看到的,例如1月表示为0月。这时候需要用查表法自定义。查表法步骤:1、新建一个Calendar对象。Calendar c = Calendar.getInstance();2、自定义一个数组,元素为月份。String [] mons = {“1月”,“2月”,“3月”,“4月”,“5月”,“6月”,“7月”,“8月”,“9月”,“10月”,“11月”,“12月”};3、获得Calendar.MONTH返回值,并查表输出。int index = c.get(Calendar.MONTH);Sop(mos[index]);
六.方法包含用于执行初等数学运算的方法,如初等指数、对数、平方根、三角函数。
是个工具类,字段、方法都是静态的。
abs:绝对值。
ceil:floor
static double
ceil(double a)
返回最小的(最接近负无穷大)double
值,该值大于等于参数,并等于某个整数。- 举例:Math.ceil(16.3)返回值是17, Math.ceil(-16.3)返回值是-16.
round
static double
floor(double a)
返回最大的(最接近正无穷大)double
值,该值小于等于参数,并等于某个整数。- 举例:Math. f
loor(16.3)
的返回值是16, Math. floor(-16.3)
的返回值是-17.pow
- 四舍五入。
random
static double
pow(double a, double b)
返回第一个参数的第二个参数次幂的值。- a是底数,b是指数,举例a的b次方。
static double
random()
返回带正号的double
值,该值大于等于0.0
且小于1.0
。- 随机数,返回0.0到1.0之间的double随机数。
- 使用:一般使用类型强转,乘除加减运算得出需要的随机数。
- 45.黑马程序员-其他对象
- 黑马程序员---其他对象
- 黑马程序员-其他对象
- 黑马程序员----其他对象
- 黑马程序员------其他对象
- 黑马程序员---其他对象
- 黑马程序员----其他对象
- 黑马程序员 其他对象
- 黑马程序员_java其他对象
- 黑马程序员_其他对象
- 黑马程序员_java 其他对象
- 黑马程序员-其他类型对象
- 黑马程序员--Java其他对象
- 黑马程序员_其他对象
- 黑马程序员_API_其他对象
- 黑马程序员-day18-其他对象
- 黑马程序员_JAVA_其他对象
- 黑马程序员--API其他对象
- 64位的系统最大可以支持多大内存
- 采用cbp2make工具由code::blocks工程创建makefile文件
- Resource is out of sync with the file system: 异常
- Symbian模拟器“Cannot start ECMT Manager”错误提示解决方案
- RO,RW和ZI及ARM程序
- 45.黑马程序员-其他对象
- Delphi线程池(Delphi2009以上版本适用)
- 和菜鸟一起学linux之do{...}while(0)的简单实例
- 北京医改试点破茧-北京-医改
- load average
- tomcat 启动
- 由虚变实 Windows 8开始按钮成为物理按键
- 求字符串中最长连续递增子数字串
- Android中preference的使用