Java基础之常用类

一、String

1.多个字符组成的一串数据,它可以和字符数组进行相互转换

2.构造方法:
  public String ( )  空构造
  public String (byte[ ] bytes)  把字节数组转成字符串
  public String (byte[ ] bytes,int offset,int length) 把字节数组的一部分转成字符串
  public String (char[ ] value)
把字符数组转成字符串
  public String (char[ ] value,int offset,int count) 把字符数组的一部分转成字符串
  public String (String original) 把字符串常量值转成字符串

3.方法:
    判断功能
    boolean equals(Object obj) 比较字符串的内容是否相同,区分大小写
      例 s1.equals(s2) s1和s2比较
    boolean equalsIgnoreCase(String str) 比较字符串内容是否相同,忽略大小写
      例 s1.equals(s2) s1和s2比较,注意区分大小写
    boolean contains(String str) 判断大字符串中是否包含小字符串
      例 s1.contains("hello") 判断s1中有没有hello这个字符串
    boolean startsWith(String str) 判断字符串是否以某个指定的字符串开头
      例 s1.startWith("h")  判断s1中是否以h开头
    boolean endsWith(String str) 判断字符串是否以某个指定的字符串结尾
      例 s1.endWith("s")  判断s1中是否以s结尾
    boolean isEmpty() 判断字符串是否为空
      例 s1.isEmpty() 判断s1是否为空字符串

  获取功能
    int length() 获取字符串的长度
           例 s.length()
    char charAt(int index) 获取指定位置索引的字符
      例 s.charAt(7) 获取第七个位置的字符(从0开始)
    int indexOf(int ch) 返回指定字符在此字符串中第一次出现的索引
      例 s.indexOf("c") 获取 c 第一次出现的位置
    int indexOf(String str) 返回指定字符串在此字符串中第一次出现的索引
      例 s.indexOf("cake") 获取 cake 第一次出现的位置
    int indexOf(int ch,int fromIndex) 返回指定字符在此字符串中从指定位置后第一次出现处的索引
      例 s.indexOf("c",4) 从第4个索引后获取 c 的索引
    int indexOf(String str,int fromIndex) 返回指定字符串在此字符串中从指定位置后第一次出现处的索引
      例 s.indexOf("cake",4) 从第4个索引后获取 cake 的索引
    String substring(int start) 从指定位置截取字符串,默认到结尾
      例 s.substring(5) 从第5个位置截取字符串
    String substring(int start,int end) 从指定位置开始到结束截取字符串
      例 s.substring(5,8) 从第5个位置截取字符串到第8个结束,不包括第8个字符。(包左不包右)

  转换功能
    byte[ ] getBytes( ) 把字符串转换为字节数组。
      例 byte[ ] bys = s.getBytes( );
    char[ ] toCharArray( ) 把字符串转换为字符数组
      例 char[ ] cha = s.toCharArray();
    static String valueOf(char[ ] chs) 把字符数组转成字符串。
      例 String ss = String.valueOf(cha);
    static String valueOf(int i) 把int类型的数据转成字符串
      例 int y=100;
         String s2= String.valueOf(y);
      String toLowerCase( ) 把字符串转成小写
      例 String s1=s.toLowerCase
    String toUpperCase() 把字符串转成大写
      例 String s1=s.toUpperCase
    String concat(String str) 把字符串拼接
      例 s1.concat(s2) 把s1和s2拼接

  其他功能
      String replace(char old, char new) 替换字符串中的某一个字符
       例 s1.replace("p","u")  把s1中的所有p字符替换成u字符
      String replace(String old, String new) 替换字符串中的字符串
          例 s1.replace("hello","feiji") 把s1中的hello替换成feiji
      String trim() 去除字符串两端空格
         例 s1.trim(); 
      int compareTo(String str) 按字典顺序比较两 个字符串
         例 s1.compareTo(s2);
         把s1和s2比较,一样返回0。
      int compateToIgnoreCase(String str) 按字典顺序比较两个字符串,区分大小写
      例 同上

二、StringBuffer(是同步的,数据安全,效率低)/StringBuilder(单线程使用,不同步,效率高)

1.线程安全的可变字符串。

2.构造方法
  public StringBuffer() 无参构造方法。
  public StringBuffer(int capacity) 指定容量的字符串缓冲区对象。
  public StringBuffer(String str) 指定字符串内容的字符串缓冲区对象。

3.方法
       A:添加功能
    public StringBuffer append(String str)  添加任意类型到字符串杯子中
    public StringBuffer insert(int offset,String str) 在指定位置插入任意类型的数据到杯子中

B: 删除功能 
    public StringBuffer deleteCharAt(int index) 删除指定位置的一个字符
    public StringBuffer delete(int start,int end) 删除指定区间的所有字符(包左不包右)

C: 替换功能
    public StringBuffer replace(int start,int end,String str) 替换指定区间的字符串(包左不包右)

D: 反转功能
     public StringBuffer reverse()  反转字符串,例 abc--cba

E: 截取功能(注意返回值是String类型的)
    public String substring(int start) 截掉字符串(截掉输入参数之前的所有字符串) 
    public String substring(int start,int end) 截掉区间的字符串(包左不包右)
    public int capacity() 返回当前容量。
    public int length()  返回长度(字符数)。

三、对比String和StringBuffer拼接字符串的效率

package text;

public class Text {
    public static void main(String[] args) {
        String s = "";
        long start_s = System.currentTimeMillis();
        for(int i = 0;i < 10000;i++){
            s += "aaaa";
        }
        long end_s = System.currentTimeMillis();
        System.out.println("String拼接N次用的时间" + (end_s - start_s) + "ms" );

        StringBuffer ss = new StringBuffer();
        long start_ss = System.currentTimeMillis();
        for(int i = 0;i < 10000;i++){
            ss.append("aaaa");
        }
        long end_ss = System.currentTimeMillis();
        System.out.println("StringBuffer拼接N次用的时间" + (end_ss - start_ss) + "ms" );
    }
}

四、Math

1.Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。

2.成员方法
  public static int abs(int a)  返回 int 值的绝对值。
  public static double ceil(double a)  向上取整
  public static double floor(double a) 向下取整
  public static int max(int a,int b)   比较两个数的最大值
  public static double pow(double a,double b)  a的b次幂
  public static double random()  随机数
  public static int round(float a) 四舍五入
  public static double sqrt(double a)  正平方根

例子:因为都为静态的,所以直接Math.方法用即可

package text;

public class Text {
    public static void main(String[] args) {
        System.out.println(Math.E);  //输出值为:2.718281828459045
        System.out.println(Math.PI); //输出值为:3.141592653589793
        System.out.println(Math.abs(-123));//输出值为:123,绝对值
    }
}

五、Random

1.此类用于产生随机数

2.构造方法

  public Random()  没有给种子,用的是默认种子,是当前时间的毫秒值。
    例 Random r = new Random();
  public Random(long seed)  给出指定的种子,给出种子后每次得到的随机数是相同的
    例 Random r = new Random(1201);

3.成员方法

  public int nextInt() 返回的是int范围内的随机数
    例 r.nextInt()  返回一个int范围内的随机数
  public int nextInt(int n) 返回的是【0,n】范围内的随机数
    例 r.nextInt(10) 返回0到10以内的随机数

例子1:

package text;

import java.util.Random;

public class Text {
    public static void main(String[] args) {
        Random r = new Random();
        int a = r.nextInt(10);
        System.out.println(a);//返回值为0~10内的随机一个数
    }
}

例子2:

package text;

import java.util.Random;

public class Text {
    public static void main(String[] args) {
        for(int i=0;i<10;i++){   //for循环,循环10次,每次输出一个0~10的随机数
            Random r = new Random();
            int a = r.nextInt(10);
            System.out.println(a);
        }
    }
}

六、Date

1.Date 表示特定的瞬间,精确到毫秒

2.构造方法

  public Date() 根据当前的毫秒值创建日期对象
  public Date(long date) 根据给定的毫秒值创建日期对象

3.成员方法
  public long getTime()  获取当前时间
  public void setTime(long time)  设置时间

七、DateFormat

1.DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。
  是抽象类,所以使用其子类SimpleDateFormat

2.SimpleDateFormat(可以把日期转换成String类型)

3.构造方法
  public SimpleDateFormat() 默认模式
  public SimpleDateFormat(String pattern)
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss")
4.成员方法
  public final String format(Date date) 把日期格式转换成String类型
  public Date parse(String source)  把给定的字符串解析成日期格式

例子:

package text;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatUtil {
    public static String dateToString(Date date){  //见名知意,日期转字符串
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
        return sdf.format(date);
    }

    public static Date stringToDate(String str){   //见名知意,字符串转日期
        Date d = null;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            d = sdf.parse(str);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return d;
    }
}
package text;

import java.util.Date;

public class Text {
    public static void main(String[] args) {

        Date d = new Date();
        System.out.println(DateFormatUtil.dateToString(d)); //输出值为:2017年07月23日 14:55:23

        String ss = "2015-07-23";
        System.out.println(DateFormatUtil.stringToDate(ss)); //输出值为:Thu Jul 23 00:00:00 CST 2015
    }
}

八、Calendar

1.Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转  换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

2.成员方法
  public static Calendar getInstance()  获取当前时间
  Calendar c = Calendar.getInstance;

  public int get(int field) 返回给定日历字段的值。
  public void add(int field,int amount)  根据给定的日历字段和对应的时间,来对当前的日历进行操作
  public final void set(int year,int month,int date) 设定当前的日历时间

时间: 2024-11-05 12:26:05

Java基础之常用类的相关文章

java基础教程-常用类(四)

四.常用类 4.1字符串相关的类(String StringBuffer) 4.1.1String类   4.1.2StringBuffer类(代表可变的) 解释一下可变和不可变 String s1 = “hello”; String s2 = “world”; s1+=s2; 实际上又开辟了一块内存,将hello和world copy进去,s1指向新的内存 而StringBuffer只是在s1后面增加了一块内存,把world加上,不需要copy String与StringBuffer只有这一定

Java基础总结--常用类以及包的访问权限

-----Object---所有类的根类1.怎么得到的:通过对所有对象不断的向上抽取共性,具备所有对象的共性的东西2.常用的方法* equals(Object obj):比较两个对象的引用是否指向同一个对象,本质就是引用地址是否相同,相同就返回true;作用和"=="一致,其子类继承后,只判断地址没有意义,一般会对该方法进行重写,重写后比较的是对象的特有内容是否相同.也用到了多态,为了代码的扩展性.eg字符串equals比较的就是内容.注意一个细节:重写后存在多态,若要访问子类特有数据

Java基础之常用类及方法(七)

String类: java.lang.String类代表不可变的字符序列. String类的常见构造方法: String(String original):创建一个String对象为original的拷贝. String(char[] value):用一个字符数组创建一个String对象. String(char[] value,int offset,int count):用一个字符数组从offset项开始的count个字符序列创建一个String对象. package MyString; pu

Java基础之装饰类

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.ios培训..Net培训</a>.期待与您交流!------ Java基础之装饰类:简介:首先他是一种设计模式属于23种设计模式之一,英文叫Decorator Pattern.又叫装饰者模式.装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能.它是通过创建一个包装对象,也就是装饰来

【Java菜鸟学习总结】Java基础知识(类)

目录 [Java菜鸟学习总结]Java基础知识(类) 1.面向对象编程 2.类 3.static关键字 4.final关键字 [Java菜鸟学习总结]Java基础知识(类) 1.面向对象编程 1.1.面向对象编程的特征 面向对象编程(OOP)的三大特征 { 封装; 继承; 多态; } 1.2.类与对象概述 类与对象是面向对象的核心概念. 类与对象 { 类; // 类是对于一类事物的描述,是抽象的.概念的定义. 对象; // 对象是实际存在的该类事物的每个个体,因而也别称为实例. } 2.类 2.

Java基础之File类的使用

Java基础之File类的使用 1.File类的构造方法和常用方法 2.对File中listFile(FileNameFilter name)学习 3.与File文件类相关的实现 File类的构造方法和常用方法: 在Java中File类在IO流中被频繁使用,可以使用一个文件路径来表示在特定位置上的文件,但是需要注意的是这个路径只表示一个文件抽象的概念, 文件到底在不在这个路径下是不确定,换句话说,是不能通过文件路径来判断文件是否存在. 构造方法 File(File parent, String 

黑马程序员--java基础之其他类

-------android培训.java培训.期待与您交流! ---------- Java基础中的其他对象:System 关于System类的用法: /* System:类中的方法和属性都是静态的 out:标准输出,默认是控制台 in:标准输入,默认是键盘 获取系统属性信息:Properties getProperties(); */ import java.util.*; class SystemDemo { public static void main(String[] args) {

JAVA异常处理、常用类、反射、集合

异常 异常:在Java中是指被一个方法抛出的对象. 分类:检查异常.运行时异常.错误 运行时异常(uncheckd):RuntimeException和其子类 检查异常(checkd/搜检异常):指Exception和其子类,且不是RuntimeException的子类:它必须经过处理才会找到 语法: try{ //被保护的代码 }catch(异常的名称 e1){ //捕获块 } 注意:应先捕获特殊再捕获一般异常:try没有出现异常catch将不会执行 异常处理的三种选择: 1)捕获这个异常,不

Java集合的常用类以及特点

集合的两个顶级接口分别为:Collection和Map Collection下有两个比较常用的接口分别是List(列表)和Set(集),其中List可以存储重复元素,元素是有序的(存取顺序一致),可以通过List脚标来获取指定元素;而Set不可以有重复元素,元素是无序的. List接口中,比较常用的类有三个:ArrayList.Vactor.LinkedList. ArrayList :线程不安全的,对元素的查询速度快. Vector :线程安全的,多了一种取出元素的方式:枚举(Enumerat