`
Luob.
  • 浏览: 1590342 次
  • 来自: 上海
社区版块
存档分类
最新评论

java之18天 常用的类(一)

    博客分类:
  • Java
阅读更多
System类
import java.util.Properties;

/**
 * System:
 *  out:标准输出,默认是控制台
 *  in:标准输入,默认是键盘
 * 
 *  描述系统的一些信息
 *  获取系统的属性信息:Properties getProperties();
 *  
 * 
 *
 */
public 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(obj+":"+value);
		}
		
		//如何在系统中自定义一些特有信息呢?
		System.setProperty("maykey", "myvalue");
		
		//获取指定属性的信息  //安装软件的过程中 下判断 系统的类型
		String value=System.getProperty("os.name");
		System.out.println(value);
		
		//可以不可以在虚拟机启动的时候动态的加载一些信息呢?
		String v=System.getProperty("haha");
		System.out.println(v);//发现没有这个 key 对应的 value
		
		//我们可以在启动虚拟机的时候 加入我们设置的自定义参数  
		//java 命令  
		//java -Dhaha=qqqqq SystemDemo  在运行的时候通过 -D 加入 属性
	}

}

Runtime类

import java.io.IOException;


/**
 * Runtime对象
 * 该类并没有提供构造函数
 * 说明不可以new 对象,那么会直接想到该类中的方法都是静态的
 * 发现该类中还有非静态方法.
 * 说明该类肯定提供了方法获取本类对象,而且该方法是静态,并返回值为本类对象.
 *
 * 又这个特点可以看出该类使用单例设计模式完成
 * 该方法是  static Runtime getRuntime();
 *
 * 98:command  -- cmd
 *
 */
public class RuntimeDemo {
	public static void main(String[] args) throws IOException, InterruptedException {

		Runtime r=Runtime.getRuntime();
		//使用 java 打开扫雷  QQ ,暴风影音, ....
		//Process p= r.exec("c:\\winmin.exe"); //返回打开的一个本地进程
		Process p= r.exec("notepad.exe E:\\workspace4\\exam\\src\\com\\itheima\\day18\\RuntimeDemo.java"); //返回打开的一个本地进程
		
		
		Thread.sleep(4000l);
		p.destroy();  //销毁 上面创建的本地进程
	}

}



Math类
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.Random;

public class MathDemo {

	public static void main(String[] args) {
		
		System.out.println("======util中的随机类==========");
		method_Random();
		
		MathDemo md=new MathDemo();
		md.m1();
		md.m2();
		md.m3();
		md.m4();
	}
	//给一个小数,保留两位小数
	double f = 111231.5585;
    public void m1() {
        BigDecimal bg = new BigDecimal(f);
        double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        System.out.println(f1);
    }
    /**
     * DecimalFormat转换最简便
     */
    public void m2() {
        DecimalFormat df = new DecimalFormat("#.00");
        System.out.println(df.format(f));
    }
    /**
     * String.format打印最简便
     */
    public void m3() {
        System.out.println(String.format("%.2f", f));
    }
    public void m4() {
        NumberFormat nf = NumberFormat.getNumberInstance();
        nf.setMaximumFractionDigits(2);
        System.out.println(nf.format(f));
    }
	
	
	//java.util.Random
	public static void method_Random(){
		Random r=new Random();
		for(int x=0;x<10;x++){
			int d=r.nextInt(10)+1;//10(0-9)+1-->1-10
			sop(d);
		}
		
	}
	//java.lang.Math
	public static void method_Math(){
		double d=Math.ceil(-13.34);  //返回大于这个数的最小整数
		sop(d);
		
		double d1=Math.floor(12.34);//返回小于这个数的最大整数.
		sop(d1);
		
		long l=Math.round(12.54);  //四舍五入
		sop(l);
		
		
		double d2=Math.pow(2, 3); //a 的 3次幂
		sop(d2);
		
		
		for(int x=0;x<10;x++){
			double d3=Math.random();
			sop(d3);
		}
		System.out.println("=======1-10的随机数=====");
		for(int x=0;x<10;x++){
			int d3=(int)(Math.random()*10+1);//*10 (0-9)+1-->(1-10)
			
			//下面的就是骰子 的随机数
			//int d3=(int)(Math.random()*6+1);
			sop(d3);
		}
		
	}
	
	public static void sop(Object obj){
		System.out.println(obj);
	}

}


Date类

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class DateDemo {

	public static void main(String[] args) {
		Date d=new Date();
		System.out.println(d);
		
		DateFormat df=new SimpleDateFormat("yyyy年MM月dd日E HH:mm:ss");
		String temp=df.format(d);
		System.out.println(temp);
		
		
		Calendar c=Calendar.getInstance();
		pringCalendar(c);
		
		System.out.println("========重新设置时间=======");
		//重新设置 时间的
		Calendar cld=Calendar.getInstance();
		cld.set(2012, 11, 23);
		pringCalendar(cld);
		
		System.out.println("========两天前=======");
		Calendar c1=Calendar.getInstance();
		c1.add(Calendar.DAY_OF_MONTH, -2);
		pringCalendar(c1);
		
		System.out.println("========两年后=======");
		c1.add(Calendar.YEAR, 2);
		pringCalendar(c1);
		
		System.out.println("========获取 2014年2月的天数======");
		sop("2014年2月有"+getTwoMethodDays(2014,2)+"天");
		
		System.out.println("========获取昨天的现在的时刻======");
		getYesterdayTime();

		System.out.println("========获取两时间有效的天数===========");
		sop(getYouxiaoDays());
	}
	
	public static int getYouxiaoDays(){
		Calendar c=Calendar.getInstance();
		c.set(2013, 0, 1);
		c.add(Calendar.DAY_OF_MONTH, -1); //2012-12-12;
		//pringCalendar(c);
		//Calendar c1=Calendar.getInstance();
		return c.get(Calendar.DAY_OF_YEAR);
				
	}
	
	//获取昨天的现在的时刻
	public static void getYesterdayTime(){
		Calendar c=Calendar.getInstance();
		c.add(Calendar.DAY_OF_MONTH, -1);
		pringCalendar(c);
	}
	
	//获取任意年2月的天数
	public static int getTwoMethodDays(int year,int month){
		if(month<0 || month>11)
			throw new RuntimeException("无效的月份异常");
		Calendar c=Calendar.getInstance();
		c.set(year, month, 1);// 表示的是3月1号
		c.add(Calendar.DAY_OF_MONTH, -1);
		return c.get(Calendar.DAY_OF_MONTH);
	}
	
	
	public static void pringCalendar(Calendar c){
		int year=c.get(Calendar.YEAR);
		sop(c.get(Calendar.YEAR)+"年");
		//月份 可以采用 查表法 进行映射成  1月  String[] mons={"一月"....};
		sop((c.get(Calendar.MONTH)+1)+"月");
		sop(c.get(Calendar.DAY_OF_MONTH)+"日");
		//星期 也可以采用查表发 进行 映射 
		sop("星期"+c.get(Calendar.DAY_OF_WEEK));
		sop("第"+c.get(Calendar.DAY_OF_WEEK_IN_MONTH)+"周");
		
	}
	
	public static void sop(Object obj){
		System.out.println(obj);
	}

}
0
4
分享到:
评论

相关推荐

    java基础18天Typora笔记

    这是一份专为Java初学者准备的学习资源,由魔乐科技提供,旨在帮助用户在18天内建立起坚实的Java编程基础。Typora是一款简洁而高效的Markdown编辑器,使得笔记整理和阅读更加便捷。通过这份笔记,学习者将逐步了解并...

    java教程-每日一课,27天java从入门到进阶

    精品java学习教程,原理讲解+...第15-18天:数组到集合 第19天:文件操作IO 第20、21天:IO流文件操作类图 第22天:其他流 第23天:多线程 第24天:多线程深入 第25天:GUI 第26天:网络变成 第27天:反射和设计模式

    Java日期工具类

    Java日期工具类 1、日期的各种格式化 2、获取当前年度 3、获取当前月份 4、获取当前天号数 5、获取当前时间往前推一个月的时间 6、获取上个月("MMM yyyy") 7、获取上个月("yyyymm") 8、获取上个月("yyyy-mm") 9、...

    java基础18天学习内容源码

    这个压缩包很可能包含了18天的学习计划中的每一天所涉及的代码示例和练习,帮助初学者逐步理解并掌握Java语言。 在Java的学习旅程中,以下几个重要的知识点是不可或缺的: 1. **Java环境配置**:首先,了解如何...

    18天java笔记(txt版)

    这份"18天Java笔记"提供了一个快速学习Java的核心内容精华,适合初学者和有一定经验的开发者进行回顾和巩固。txt版的格式使得笔记易于阅读和在不同设备上分享。 Java的基础知识包括语法、数据类型、控制流、类与...

    18天java学习之经典笔记

    "18天Java学习之经典笔记"是一份专为快速掌握Java基础知识而设计的学习资料,适用于那些希望在短时间内复习、备考或者准备面试的人员。这份笔记涵盖了Java的核心概念,通过18天的学习计划,帮助读者逐步理解并熟练...

    java18天分章节笔记

    这份"java18天分章节笔记"提供了一个全面的学习路径,涵盖了从基础到进阶的多个关键知识点。下面,我们将按照笔记的章节结构,逐一解析每个部分的重要内容。 1、环境与基本变量 在学习Java的第一步,你需要配置好...

    18天java学习笔记 详细

    这份“18天Java学习笔记”旨在帮助初学者在短短两周内建立起对Java基础的全面理解。以下是对这些笔记中可能包含的重要知识点的详细阐述: 1. **Java基础知识**:学习Java首先要了解其基本语法,包括数据类型(如...

    18天的JAVA笔记

    总的来说,这份“18天的JAVA笔记”是一份全面的Java学习资料,适合初学者系统学习,也适合作为有经验的开发者回顾和巩固知识的参考资料。通过深入理解和实践其中的知识点,读者可以逐步提高自己的Java编程技能,为...

    18天java学习笔记

    在“18天Java学习笔记”中,我们可以深入探索Java编程语言的基础知识,这是一个由18个独立的TXT文档组成的系列,每个文档可能涵盖了不同阶段的学习内容。这些笔记旨在帮助初学者逐步理解并掌握Java的核心概念和技术...

    java(18天)笔记,txt文件

    这个“java(18天)笔记,txt文件”涵盖了从基础到进阶的多个Java知识点,通过18天的学习计划,帮助学习者系统地掌握这门语言。 1. **Day01 - Java入门**: 开始接触Java,了解其历史背景,学习安装Java开发环境(JDK)...

    JavaWeb 视频教程 传智播客 第18天 共28天

    在本JavaWeb视频教程中,我们专注于第18天的内容,这是整个28天课程计划的一部分,由知名教育机构传智播客提供。这天的课程主要围绕Java数据库连接(JDBC)技术展开,它是Java开发者与关系型数据库进行交互的基础...

    Java基础-18天入门版

    ### Java基础-18天入门版 #### 第一天:开班+Java 入门 **目标:** - 了解Java的基础概念。 - 掌握Java的学习方法。 - 理解Java的语言特点及其就业前景。 - 学习JDK的作用与安装。 - 了解Java的运行原理。 - 实现...

    Java基础(18天入门版).rar

    这个名为"Java基础(18天入门版).rar"的压缩包文件显然是一个针对初学者设计的教程,旨在18天内帮助学习者掌握Java编程的基础知识。 在这个18天的学习计划中,你将可能接触到以下关键知识点: 1. **Java环境配置**...

    java18天笔记资料(推荐)

    本资源“java18天笔记资料(推荐)”显然是一份全面且深入的学习指南,旨在帮助初学者或有经验的开发者在18天内系统地掌握Java的核心概念和技术。这份笔记可能涵盖了从基础语法到高级特性的全方位讲解,是提升Java...

    Core java自学笔记(18天)

    类是Java中最基本的概念之一,用于定义对象的行为和状态。一个类可以包含多个方法和属性。方法是类的行为,而属性则是类的状态。例如,在一个“人”的类中,可以定义一个名为`setName`的方法来设置人的名字,同时...

    达内core java 18天课程全代码

    在"达内core java 18天课程全代码"这个课程中,我们可以期待深入学习Java这门强大的编程语言的核心概念和技术。Java作为一款面向对象的编程语言,广泛应用于企业级应用、Android开发、大数据处理等多个领域。以下是...

    Java2 编程21天自学通

    《Java2 编程21天自学通》是一本针对初学者设计的Java编程教程,旨在帮助读者在21天内快速掌握Java2的核心概念和技术。这个教程可能包含多个章节,涵盖从基础语法到高级特性的全面讲解。下面将详细阐述Java2编程中的...

    21天java学习PPT

    在“21天Java学习PPT”中,你将踏上一段深入学习Java编程语言的旅程。这个资源旨在帮助初学者在短短21天内建立起坚实的Java基础,同时也适合那些希望巩固或更新Java知识的开发者。PPT的形式使得学习更加直观和易懂,...

    21天学会Java--教案

    本教程“21天学会Java”旨在为新手提供一个系统、全面的学习路径,帮助他们在短时间内掌握Java编程基础。 在21天的学习计划中,通常会按照以下阶段进行: 第1-3天:Java基础知识 这个阶段会介绍Java的历史、发展和...

Global site tag (gtag.js) - Google Analytics