黑马程序员java基础之其他对象

来源:互联网 发布:sql注入点扫描工具 编辑:程序博客网 时间:2024/04/29 03:46
------- android培训、java培训、期待与您交流! ----------

1.System对象:描述一些系统的信息。  当中的方法和属性都是静态的,

    out:标准输出,默认控制台(屏幕);  int 标准输出,默认键盘

    获取系统属性信息:Properties   getProperties()

import java.util.*;class SystemDemo{  public static void main(String[] args)  {     Properties prop =System.getProperties();   //Properties属于Hashtable的子类,即Map子类,所以可以直接用Map的方法取出集合中的元素   //集合中存储的都是字符串,没有泛型的定义    //获取所有属性信息/*     for(Object obj: prop.keySet())     {        String value=(String)prop.get(obj);        System.out.println("::"+value);     }*/     //获取指定属性信息      String value= System.getProperty("os.name");      System.out.println("::"+value);      //在系统中自定义一些特有信息      System.setProperty("myke","kjdihfsdngksdnfksdls");            //在系统中动态创建一个属性   运行时要手动设置属性java -Dhaha=qqqqq SystemDemo        String v=System.getProperty("haha");      System.out.println(v);  }}
2.RunTime对象: 没有提供构造函数,有非静态方法,则该类提供了静态方法获取本类对象,且返回值是本类类型。使用单例设计模式完成

   该方法是 static Runtime getRuntime();

class RunTimeDemo{   public static void main(String[] args) throws Exception   //exec会抛出IO异常   {      Runtime r=Runtime.getRuntime();      Process p=r.exec("notepad.exe");            Thread.sleep(4000);       p.destory(); //杀掉程序      

3.Date对象:获取的年份日月都是String类型,不能进行增减

import java.util.*;import java.text.*;class DateDemo{  public static void main(String[] args)  {      Date d=new Date();      System.out.println(d);      //将模式封装到SimpleDateFormat对象中;      SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日E hh:mm:ss");      //调用format方法让模式格式格式化指定Date对象      String time=sdf.format(d);      System.out.println("time="+time);   }}

4.Calendar对象:可以将时间日期返回int型数据,可以进行增减

用制表法打印日期

import java.util.*;import java.text.*;class CalendarDemo{   public static void main(String[] args)   {      /*Date d=new Date();SimpleDateFormat sdf =new SimpleDateFormat("yyyy");String year=sdf.format(d);System.out.println(year);*/      Calendar c= Calendar.getInstance();      String[] mons={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};String[] weeks={"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};int mon=c.get(Calendar.MONTH);int week=c.get(Calendar.DAY_OF_WEEK);      sop(c.get(Calendar.YEAR)+"年");      //sop(c.get(Calendar.MONTH)+1+"月");sop(mons[mon]);      sop(c.get(Calendar.DAY_OF_MONTH)+"日");      //sop("星期"+c.get(Calendar.DAY_OF_WEEK));sop(weeks[week]);    }public static void sop(Object obj){System.out.println(obj);}}

自主设定某个时间,跳转到这一时间,并对时间进行量的偏移

import java.util.*;import java.text.*;class CalendarDemo2{   public static void main(String[] args)   {      Calendar c= Calendar.getInstance();      //c.set(2012,2,12);  //自主设定时间c.add(Calendar.YEAR,4);  //时间年份偏移到4年之后        c.add(Calendar.DAY_OF_MONTH,-9);  //月份的时间向前9天show(c);    }public static void sop(Object obj){System.out.println(obj);}public static void show(Calendar c){String[] mons={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};String[] weeks={"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};int mon=c.get(Calendar.MONTH);int week=c.get(Calendar.DAY_OF_WEEK);sop(c.get(Calendar.YEAR)+"年");sop(mons[mon]);      sop(c.get(Calendar.DAY_OF_MONTH)+"日");      sop(weeks[week]);}}

练习:求某一年的2月有多少天?

   

import java.util.*;import java.text.*;//获取任意年的二月有多少天class CalendarTest{public static void main(String[] args){Calendar c=Calendar.getInstance();int year=2034;c.set(year,2,1);//某一年的3月1日;c.add(Calendar.DAY_OF_MONTH,-1);  //3月1日往前推一天,就是2月的天数sop(year+"年的2月有"+c.get(Calendar.DAY_OF_MONTH)+"天");}}


5.Math对象:  ceil 返回大于指定数据的最小整数;  floor 返回小于指定数据的最大整数; round 四舍五入 
double d=Math.ceil(12.34);double d1=Math.floor(12.34);long l=Math.round(12.54);double d2=Math.pow(2,3);//2的3次方

  random:获取0到1之间的伪随机数;还可以用Random类  

public static void main(String[] args){     Random r=new Random();            for(int x=0;x<10;x++)            {                //int d=(int)(Math.random());                //sop(d);                int d=r.nextInt(10)+1;  //nextInt(10):传入0到10之间,不包括10                sop(d);             }
练习:给定一个小数,保留小数点后面两位

class MathTest{   public static void main(String[] args)   {            double d=3.25556;//取一个double型的数据            d=Math.round(d*100);//乘100后四舍五入            d=d/100;//还原原来数据,并取两位小数点后的            sop(d);    }    public static void sop(Object obj)    {      System.out.println(obj);    }}


0 0
原创粉丝点击