zoukankan      html  css  js  c++  java
  • 疯狂Java讲义笔记(二)

    第7章 与运行环境交互

    @(马克飞象)

    1. 关于public static void main(String[] args)public 修饰符:Java类由JVM调用,为了让JVM可以调用main方法,所以使用public修饰符。
    2. 获取键盘输入:ScannerBufferedReader,System.in代表标准输入,就是键盘输入。
     //Scanner方法
     Scanner sc = new Scanner(System.in);
     while(sc.hadNext()){
    	 System.out.println(sc.next());
     }
     //BufferedReader方法
     BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
     String line = null;
     while((line = br.readLine()) != null){
    	 System.out.println(line);
    }
    
    1. Runtime类可以直接单独启动一个进程来运行操作系统的命令,比如以下代码将启动记事本:
    Runtime rt = Runtime.getRunTime();
    rt.exec("notepad.exe");
    
    1. StringStringBufferStringBuilder
      String类是不可变类,从创建到销毁其字符序列不可变。
      StringBuffer对象是字符序列可变的字符串,提供append()、insert()、reverse()、setCharAt()、setLength()等方法。
      StringBuilderStringBuffer类似,比起stringBuffer没有实现线程安全功能,性能略高,一般情况下优先使用该类创建可变字符串。
    2. 字符串中equals== 的区别:= =用来判断两个对象的地址是否相同,是否指向同一个对象,比较的是真正意义上的指针操作;equals()比较字符串的字符序列是否相同。即java.lang.String类重写了equals方法,如果两个字符串对象包含有相同的内容返回true,但是= =只有它们引用的地址相同时才会返回true。
    3. 创建BigDecimal对象时,要使用String作为构造器参数而不是直接使用Double。比如:使用BigDecimal f1 = new BigDecimal("0.05");而不是BigDecimal f1 = new BigDecimal(0.05);
    4. 正则表达式预定义字符
      |预定义字符|说明|
      |-|-|-|
      | .|匹配任何字符|
      | d|0-9所有数字|
      | D|非数字|
      | s|所有的空白字符,包括空格、制表符、回车符、换页符、换行符等|
      | S|所有的非空白字符|
      | w|所有的单词字符,包括0-9数字、26个英文字母和下划线(_)|
      | W|所有的非单词字符|
    5. 判断电子邮件地址是否合法的正则表达式:
      String mailRegEx = "\w{3,20}@\w+\.(com|cn|net|org|edu.cn)";
    6. String类也提供了replaceAll()replaceFirst()split()等方法使用正则表达式来进行字符串操作,比如
    String str = "result,replace,respect";
    str.replaceAll("re\w*","xx-");//结果为xx-,xx-,xx-
    
    1. 使用SimpleDateFormat格式化日期实例
    Date d = new Date();
    System.out.println(d);
    SimpleDateFormat sdf1 = new SimpleDateFormat("Gyyyy年中第D天");
    String dateStr =  sdf1.format(d);
    System.out.println(dateStr);
    
    String str = "07###三月##21";
    SimpleDateFormat sdf2 = new SimpleDateFormat("y###MMM##d");
    System.out.println(sdf2.parse(str));
    
    /***输出
     * Mon Dec 25 23:26:01 CST 2017
     * 公元2017年中第359天
     * Wed Mar 21 00:00:00 CST 2007
     */
    

    SimpleDateFormat把日期格式化成什么样的字符串,以及能把怎样的字符串解析成Date,取决于创建该对象时指定的pattern参数,即使用日期字段占位符的日期模板。

  • 相关阅读:
    Redis持久化
    Windows Phone中扩展WebBrowser使其支持绑定html内容
    使用MVVM-Sidekick开发Universal App(二)
    使用MVVM-Sidekick开发Universal App(一)
    在Windows Phone 8中使用Live Connect并保持登陆状态
    iOS 打印结构体
    CGAffineTransformMake 矩阵变换 的运算原理(转)
    二维码快速扫描工具
    微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常(转)
    UIView的setNeedsLayout, layoutIfNeeded 和 layoutSubviews 方法之间的关系解释(转)
  • 原文地址:https://www.cnblogs.com/liesun/p/8111704.html
Copyright © 2011-2022 走看看