Java 基础入门 | Java十大常用基本类库

简介: Java十大常用基本类库

1.Object

(1)所有类的父类:超类,基类,根类。

(2)构造器:

Object()

image.gif

(3)方法:

String toString();   //以字符串的形式返回当前对象在堆内存中的首地址
int    hashCode();   //返回当前对象的哈希码值
boolean equals(Object  o);//比较两对象是否相同(按首地址比较)

image.gif

(4)== 和equals方法的区别

    • ==可以比较两个基本数据类的变量的值是否相等
    • ==也可以比较对象的首地址是否相同
    • equals方法只能比较对象的首地址是否相同

    2.String

    (1)用途:存储字符串,处理字符串

    (2)构造器:

    String()
        String("...")   
        String(char[]  c)
        String(byte[]  b)

    image.gif

    (3)方法:

     

    int  length();                //获取字符串的长度
    String trim();                //取消字符串前后的空格
    char charAt(int  index);      //获取字符串中对应位置的字符
    int  indexOf(String  str);    //获取子字符串在当前字符串中的起始位置
    int  lastIndexOf(String  str);//获取子字符串在当前字符串中最后出现的起始位置
    String replace(String  old,String new);//用new替换当前字符串中old,返回一个替换之后的新字符串对象
    String substring(int  begin); //从指定位置截取字符串,返回一个截取后的新字符串对象
    String substring(int  begin,int end);//从指定位置截取字符串到end前一位
    boolean startsWith(String  str);  //判断字符串是否以str开始
    boolean endsWith(String str);     //判断字符串是否以str结束
    boolean isEmpty();                //判断字符串的长度是否为0
    boolean contains(char c);         //判断字符串中是否包含该字符
    String toUpperCase();        //英文字母转为大写
    String toLowerCase();        //英文字母转为小写
    String valueOf(基本数据类型  i); //基本数据类型转为字符串    
    char[] toCharArray();       //字符串转为字符数组
    byte[] getBytes();          //字符串转为字节数组
    String[] split(String regex); //使用regex将字符串分割多段

    image.gif

    事例:

    String str="abcda123";
    String[]  ss=str.split("a");
    {"","bcd","123"}
    int compareTo(String str2);  //字符串比较
    事例:
    String str ="abcda123";
    String str2="abcdf123";
    int  i=str.compareTo(str2);
    String concat(String str);   //字符串拼接  
    等价形式:  ".."+"..";
    重写的方法:
    String toString();       //返回字符串的内容
    boolean  equals(Object  o);  //比较字符串对象的内容是否相同(区别大小写)
    boolean  equalsIgnoreCase(Object  o)//比较字符串对象的内容是否相同(不区别大小写)

    image.gif

    (4)特点:

    String字符串对象一旦创建,其内容不可修改。

    3.StringBuffer和StringBuilder

    (1)用途:存储字符串,处理字符串

    (2)说明:这两个类很相似,其方法是一样的。
    (3)区别:StringBuffer是线程安全的,StringBuilder是线程不安全的
    (4)特点:

    StringBuffer和StringBuilder的对象的内容是可以改变的。

    (5)构造器:

    StringBuffer();
    StringBuffer(".....");

    image.gif

    (6)方法:

    StringBuffer append(String str); //字符串的拼接,将拼接的结果保存在当前对象中,返回当前对象
    StringBuffer delete(int start, int end);
    StringBuffer insert(int offset, String str);
    StringBuffer replace(int start, int end, String str); 
    String toString();    //将StringBuffer对象转为String类型
    和String一样的方法:
     int indexOf(String str)
     int lastIndexOf(String str) 
     int length() 
     String substring(int start) 
     String substring(int start, int end) 
     char charAt(int index)

    image.gif

    4.Math

    (1)用途:数学计算
    (2)常量属性:

       Math.PI     Math.E

    (3)方法:

    int abs(int i);            //绝对值
      double round(double  d);   //四舍五入
      double random();           //[0,1)随机数
      int ceil(double d);        //>=的最小整数
      int floor(double d);       //<=的最大整数
      //最大值和最小值
      sqrt(..) //求平方根
      pow(x,y) //求x的y次方

    image.gif

    5.Scanner

    java.util.Scanner
    Scanner   sc=new Scanner(System.in);
    String  sc.nextLine();
    String  sc.next();
    int sc.nextInt();
    double sc.nextDouble();
    .......

    image.gif

    6.包装类

    (1)有8个:

    Byte  Short  Integer  Long  Float  Double   Boolean   Character

    (2)包装类是引用数据类型
    (3)3种数据类型转换:

    基本数据类型   包装类   String

    例如:

    int    Integer   String
    int-->Integer
    int i=9;
    Integer  in=i;//自动装箱
    Integer-->int
    Integer  in=new Integer(9);
    int  i=in;   //自动拆箱
    int -->String
    int i=9;
    String  si=""+i;
    String-->int
    String  si="9";
    int  i=Integer.parseInt(si);
    Integer-->String
    Integer  in=new Integer(9);
    String si=in.toString();
    String -->Integer
    String  si="9";
    Integer  in=new Integer(si);

    image.gif

    (4)使用包装类的原因:

    包装类的对象,既可以存储数据,又可以提供对数据进行操作的方法。

    7.java.util.Date

    (1)用途:用来存储日期时间,处理日期时间
    (2)构造器:

    Date();
    //创建当前时间对象
    Date(long  time);
    //创建以基准时间为参照经过time毫秒后的时间对象
    //世界标准基准时间是:1970-1-1 00:00:00 0

    image.gif

    (3)方法:

    String toString();   //将当前对象中的日期时间以字符串的形式输出
    long    getTime();   //返回相对基准时间的毫秒数
    过时的方法: 
    int getYear();     //1900
    int getMonth();    //0-11
    int getDate();
    int getHours();
    int getMinutes();
    int getSeconds();
    int getDay();      //0-6
    --对应的有set方法。。。。。。。

    image.gif

    8.java.util.Calendar

    (1)用途:存储日期时间,处理日期时间
    (2)抽象类
    (3)子类:GregorianCalendar
    (4)方法:

    Calendar    getInstance();  //返回一个Calendar子类对象
    int  get(int  i);   //返回日历中参数指定的信息
    void set(int  i,int  val); //设置日历中参数指定的信息的值
    说明:
    i 可以用Calendar的静态常量指定。
    void setTime(Date  d);//用Date对象的时间来设置当前Calendar对象的时间
    Date getTime();       //将Calendar对象的时间转为Date类型

    image.gif

    (5)GregorianCalendar

    boolean isLeapYear(int year);  //判断参数年份是否是闰年

    9.java.text.SimpleDateFormat

    (1)用途:时间格式化
    (2)父类:DateFormat(抽象类)
    (3)构造器:

    SimpleDateFormat()
    SimpleDateFormat(String  patten);

    image.gif

    (4)patten格式定义:

    yyyy年MM月dd日 HH:mm:ss  E

    (5)方法:

    String format(Date  d);   //将Date对象的时间转为我们想要的格式输出
    Date   parse(String  ff);

    image.gif

    10.java.text.DecimalFormat

    (1)用途:数字格式化
    (2)父类:NumberFormat(抽象类)
    (3)构造器:

     

    DecimalFormat()
    DecimalFormat(String patten);

    image.gif

    (4)patten格式定义:

    #阿拉伯数字   0阿拉伯数字

    .小数点       ,分隔符

    (5)方法

    String format(double  d);   //将数字转为我们想要的格式输出
    double   parse(String  ff);

    image.gif

     

    相关文章
    |
    17天前
    |
    监控 安全 Java
    Java中的多线程编程:从入门到实践####
    本文将深入浅出地探讨Java多线程编程的核心概念、应用场景及实践技巧。不同于传统的摘要形式,本文将以一个简短的代码示例作为开篇,直接展示多线程的魅力,随后再详细解析其背后的原理与实现方式,旨在帮助读者快速理解并掌握Java多线程编程的基本技能。 ```java // 简单的多线程示例:创建两个线程,分别打印不同的消息 public class SimpleMultithreading { public static void main(String[] args) { Thread thread1 = new Thread(() -> System.out.prin
    |
    23天前
    |
    Java 大数据 API
    14天Java基础学习——第1天:Java入门和环境搭建
    本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
    |
    29天前
    |
    存储 安全 Java
    🌟Java零基础-反序列化:从入门到精通
    【10月更文挑战第21天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
    71 5
    |
    27天前
    |
    安全 Java 调度
    Java中的多线程编程入门
    【10月更文挑战第29天】在Java的世界中,多线程就像是一场精心编排的交响乐。每个线程都是乐团中的一个乐手,他们各自演奏着自己的部分,却又和谐地共同完成整场演出。本文将带你走进Java多线程的世界,让你从零基础到能够编写基本的多线程程序。
    34 1
    |
    1月前
    |
    Java 数据处理 开发者
    Java多线程编程的艺术:从入门到精通####
    【10月更文挑战第21天】 本文将深入探讨Java多线程编程的核心概念,通过生动实例和实用技巧,引导读者从基础认知迈向高效并发编程的殿堂。我们将一起揭开线程管理的神秘面纱,掌握同步机制的精髓,并学习如何在实际项目中灵活运用这些知识,以提升应用性能与响应速度。 ####
    46 3
    |
    14天前
    |
    Java 开发者
    Java多线程编程中的常见误区与最佳实践####
    本文深入剖析了Java多线程编程中开发者常遇到的几个典型误区,如对`start()`与`run()`方法的混淆使用、忽视线程安全问题、错误处理未同步的共享变量等,并针对这些问题提出了具体的解决方案和最佳实践。通过实例代码对比,直观展示了正确与错误的实现方式,旨在帮助读者构建更加健壮、高效的多线程应用程序。 ####
    |
    21天前
    |
    安全 Java 测试技术
    Java并行流陷阱:为什么指定线程池可能是个坏主意
    本文探讨了Java并行流的使用陷阱,尤其是指定线程池的问题。文章分析了并行流的设计思想,指出了指定线程池的弊端,并提供了使用CompletableFuture等替代方案。同时,介绍了Parallel Collector库在处理阻塞任务时的优势和特点。
    |
    5天前
    |
    缓存 Java 开发者
    Java多线程编程的陷阱与最佳实践####
    本文深入探讨了Java多线程编程中常见的陷阱,如竞态条件、死锁和内存一致性错误,并提供了实用的避免策略。通过分析典型错误案例,本文旨在帮助开发者更好地理解和掌握多线程环境下的编程技巧,从而提升并发程序的稳定性和性能。 ####
    |
    4天前
    |
    安全 Java 开发者
    Java中的多线程编程:从基础到实践
    本文深入探讨了Java多线程编程的核心概念和实践技巧,旨在帮助读者理解多线程的工作原理,掌握线程的创建、管理和同步机制。通过具体示例和最佳实践,本文展示了如何在Java应用中有效地利用多线程技术,提高程序性能和响应速度。
    28 1
    |
    12天前
    |
    安全 Java 开发者
    Java 多线程并发控制:深入理解与实战应用
    《Java多线程并发控制:深入理解与实战应用》一书详细解析了Java多线程编程的核心概念、并发控制技术及其实战技巧,适合Java开发者深入学习和实践参考。