java基础类库


Scanner类(java.util.scanner)


Scanner对象.hasNextXxx(),hasNext()默认方法为字符串;//Returns true if this scanner has another token in its input.

Scanner对象.next(); //Finds and returns the next complete token from this scanner.
Scanner sc = new Scanner(System.in);
sc.useDelimiter(正则表达式);//sc.useDelimiter("\n");以换行符区分每一个输入
while(sc.hasNext()) { System.out.println(sc.next()); }

hash值计算(Static method in class java.util.Objects extend java.lang.Objects )


public class haha {

    public static void main(String[] args)
{
String a=new String("haha");
String b=new String("haha");
System.out.println("a的hash值:"+a.hashCode());
System.out.println("b的hash值:"+b.hashCode());
System.out.print("a的identityHashCode值:");
System.out.println(System.identityHashCode(a));
System.out.print("b的identityHashCode值:");
System.out.println(System.identityHashCode(b));
}
}

runtime类(java.lang.runtime)


import java.io.IOException;
public class hah {
public static void main(String[] args) throws Exception
{
Runtime rt=Runtime.getRuntime();
System.out.println(rt.availableProcessors());
System.out.println(rt.freeMemory());
System.out.println(rt.totalMemory());
System.out.println(rt.maxMemory());
rt.exec("notepad.exe");//开启新进程执行系统命令
}
}

object类


  • boolean equals(Object obj);//根据地址计算
  • int hashCode();//根据地址计算一般需重写
  • String toString();//类的tostring字符串为“类名@hashcode值”
  • protected Object clone() throws CloneNotSupportedException
  • ......

String类(java.lang.String java.lang.StringBuffer java.lang.StringBuilder)


  • String对象一旦创建就成为临时变量,StringBuffer和StringBuilder类为字符串对象提供了insert append replace...等方法,可以改变字符串对象(StringBuffer为线程安全的,效果会差一点);

Math工具类(java.lang.Math)


  • 其构造器被定义为private,因此无法创建Math对象,其多有方法都是类方法,可直接调用;
  • 提供PI和E两个类变量;

Random工具类(java.util.Random和java.util.concurrent.ThreadLocalRandom)


  • Random类产生伪随机数,种子相同产生的随机数序列相同;
  • 使用48位的种子;
  • 使用默认种子构造Random对象时,属于同一个种子;
  • 常用时间作为种子:
    import java.util.Random;
    public class hah {
    public static void main(String[] args) throws Exception
    {
    Random rand=new Random(System.currentTimeMillis()); int i=20;
    while(i>0)
    {
    int r=rand.nextInt();
    System.out.println("r:"+r);
    --i;
    }
    }
    }

BigDecimal类(java.math.BigDecimal)


  • 使用BigDecimal(String val)构造器,保持数值准确性

    BigDecimal(String val)
    Translates the string representation of a BigDecimal into a BigDecimal.

  • 或者使用valueOf(double val)等构造

    valueOf(double val)
    Translates a double into a BigDecimal, using the double's canonical string representation provided by the Double.toString(double) method.

时间工具类(java.util.Date和java.util.Calendar)


  • Calendar类为抽象类,用getinstance()静态方法获取对象;
  • 可以将Date对象传个setTime()函数,设定时间;

    setTime(Date date)
    Sets this Calendar's time with the given Date.

  • 引入import static java.util.Calendar.*;包
  • set()方法有延时特性,在调用时才修改;

时间日期类(java.time.Clock和java.time)


正则表达式(java.util.regex.Pattern java.util.regex.Matcher)


【8-22】java学习笔记04的更多相关文章

  1. Java学习笔记:04面向对象-内部类_访问修饰符_final

    04面向对象-内部类/访问修饰符/final 1.static的介绍 static:关键字,静态的 static的作用是用来修饰类中的成员 2.访问一个类中的某一个成员变量 方法一: _1.创建对象 ...

  2. Java学习笔记 04 类和对象

    一.类和对象的概念 类 >>具有相同属性和行为的一类实体 对象 >>实物存在的实体.通常会将对象划分为两个部分,即静态部分和动态部分.静态部分指的是不能动的部分,被称为属性,任 ...

  3. Java学习笔记(04)

    Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...

  4. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  5. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  6. 20145330第九周《Java学习笔记》

    20145330第九周<Java学习笔记> 第十六章 整合数据库 JDBC入门 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JD ...

  7. 20145330第八周《Java学习笔记》

    20145330第八周<Java学习笔记> 第十五章 通用API 通用API 日志:日志对信息安全意义重大,审计.取证.入侵检验等都会用到日志信息 日志API Logger:注意无法使用构 ...

  8. 20145330第七周《Java学习笔记》

    20145330第七周<Java学习笔记> 第十三章 时间与日期 认识时间与日期 时间的度量 GMT(格林威治标准时间):现在不是标准时间 世界时(UT):1972年UTC出来之前,UT等 ...

  9. 20145330第六周《Java学习笔记》

    20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...

随机推荐

  1. SQL怎么输出前n个记录? n是中间计算得到的,不支持变量传递

    需求: 表 people_crowed_test 按view_num排序后,输出该表的记录前30%的aid, buyer_id; 需求场景下的诸多限制: 1) 不支持变量赋值,也就是无法把中间结果保存 ...

  2. 【VS2013】设定Nuget代理

    @tags "visual studio 2013" nuget vs2013中用nuget想必是一件很爽的事情,就像java里面用maven来安装各种包一样.有时候网络不好,nu ...

  3. bzoj3283: 运算器

    #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...

  4. Windows Server 2012及以上安装IIS的步骤

    已经和2008安装时有着明显区别,如题的安装步骤如下: 这里需要注意的是,选择了[Web 服务器(IIS)支持]后可能会弹出选择的界面,到时也一起全选,这里由于是已经安装了,所以没弹出. 说明:上面根 ...

  5. Process

    --- - hosts: test gather_facts: false tasks: - name: Task1 shell: ls notify: Hander3 - name: Task2 s ...

  6. Python基本数据类型之str

    一.创建 s = "morra" s = str("morra") #str()这种方法会自动找到str类里的_init_方法去执行 ------------- ...

  7. jQuery知识点总结(第一天)

    整理笔记前的题外话: 我认为互联网的高速发展其中最为主要的一点就是——开源. 开源精神,使得无数的IT爱好者贡献所学,将自己的智慧结晶无偿奉献给大家.后辈的学习者在混沌的互联网世界里,追寻着前辈们留下 ...

  8. POJ2528Mayor's posters(离散化 + 线段树)

    题目链接: 题意:给定一些高度都相同的海报去贴,问最后能看见几张海报 The picture below illustrates the case of the sample input. { 8,9 ...

  9. Git / 程序员需要知道的12个Git高级命令

    众所周知,Git目前已经是分布式版本控制领域的翘楚,围绕着Git形成了完整的生态圈.学习Git,首先当然是学习Git的基本工作流.相比于SVN等传统版本控制系统来说,Git是专为分布式版本控制而生的强 ...

  10. Notepad++ 开启「切分窗口」同时检视、比对两份文件

    Notepad++ 是个相当好用的免费纯文本编辑器,除了内建的功能相当多之外,也支持外挂模块的方式扩充各方面的应用.以前我都用 UltraEdit 跟 Emeditor,后来都改用免费的 Notepa ...