2021-12-02_学习B站Java视频System对象_反转一个三位整数_Runtim对象_Date对象

备注:今天继续学习B站Java视频。视频的day25:正则表达式,之前已学完。day23-24:网络编程,我等学完IO流后再学这个。day22:GUI,这个不需要学了。day18-19-20-21:其他对象及IO流。今天从day18继续学习,同时,学习一点点算法。

1. day18,P214,System对象

/**
 * System:类中的方法和属性都是静态的。
 * out:标准输出,默认是控制台。
 * in:标准输入,默认是键盘。
 * 描述系统一些信息。
 * 获取系统属性信息:Properties getProperties();
 */
import java.util.*;
class SystemDemo {
    public static void main(String[] args) {
        Properties prop = System.getProperties();
        // 因为Properties是Hashtable,也就是Map集合的一个子类对象
        // 那么可以通过map的方法取出该集合中的元素。
        // 该集合中存储的都是字符串,没有泛型定义。

        // 如何在系统中自定义一些特有信息呢?

        // 获取指定属性信息
        String value = System.getProperty("os.name");
        System.out.println("value=" + value);

        // 可不可以在虚拟机启动时,动态的加载一些属性信息呢?
        String v = System.getProperty("haha");
        System.out.println("v=" + v);

        System.setProperty("myKey", "myValue");
        // 获取所有属性信息
        for (Object obj :prop.keySet()) {
            String value = (String)prop.get(obj);
            System.out.println(obj + "::" + value);
        }
    }
}

 2.反转一个三位整数

%,取余,左操作数除以右操作数的余数。

Java中,int / int,两个int相除,结果取整(即忽略小数部分)。

public class Solution {
    /**
     * @param number: A 3-digit number.
     * @return: Reversed number.
     */
    public int reverseInteger(int number) {
        // 原来的个位
        int oldNumOne = (number % 10) % 10;
        // 原来的十位
        int oldNumTwo = (number / 10) % 10;
        // 原来的百位
        int oldNumThree = number / 100;
        return oldNumOne * 100 + oldNumTwo *10 + oldNumThree;
    }
}

3. day18,P215,Runtime对象。

/**
 * Runtime对象
 * 该类并没有提供构造函数。
 * 说明不可以new对象。那么会直接想到该类中的方法都是静态的。
 * 发现该类中还有非静态方法。
 * 说明该类肯定会提供了方法获取本类对象。
 * 而且该方法是静态的,并且返回值类型是本类类型。
 *
 * 由这个特点可以看出该类使用了单例设计模式完成。
 *
 * 该方法是static Runtime getRuntime();
 */
class RuntimeDemo {
    public static void main(String[] args) throws Exception {
        Runtime r = Runtime.getRuntime();
        Process p = r.exec("D:\\Program Files\\Notepad++\\notepad++.exe SystemDemo.java");

//        Thread.sleep(4000);
//        p.destroy();
    }
}

4. day18,P216,Date对象。

import java.util.*;
import java.text.*;
class DateDemo {
    public static void main(String[] args) {
        Date d = new Date();
        System.out.println(d); // Thu Dec 02 21:52:04 CST 2021
                               // 打印的时间看不懂,希望有些格式。

        // 将模式封装到SimpleDateFormat对象中。
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日E HH:mm:ss");
        // 调用format方法让模式格式化指定Date对象。
        String time = sdf.format(d);
        System.out.println("time=" + time); // time=2021年12月02日星期四 22:04:46
    }
}

下一步进行day18,P217,Calendar对象。

posted on 2021-12-02 22:12  平凡力量  阅读(34)  评论(0编辑  收藏  举报