亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaSE常用類及方法是什么

發布時間:2020-10-28 14:05:41 來源:億速云 閱讀:116 作者:小新 欄目:編程語言

這篇文章主要介紹了JavaSE常用類及方法是什么,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

1、基本數據類型比較用:==

2、引用數據類型比較用:equals方法

如果引用數據類型使用==比較的話,比較的是地址值

toString

對象調用toString()需要重寫本方法: 在封裝類中,否則輸出的是地址

JavaSE常用類及方法是什么

equals方法

'對象' 調用equals()需要重寫本方法: 在封裝類中重寫,否則進行比較時比較的是地址

JavaSE常用類及方法是什么

String

String有一個切割split,按一個字符串進行切割,返回切割之后的字符串數組

String[] split(String regex)

public int length () :返回此字符串的長度。

public String concat (String str) :將指定的字符串連接到該字符串的末尾。

public char charAt (int index) :返回指定索引處的 char值。

public int indexOf (String str) :返回指定子字符串第一次出現在該字符串內的索引。

public int indexOf(String str, int fromIndex) :返回指定子字符串在此字符串中第一次出現處的索引,從指定的索引開始。

public String substring (int beginIndex) :返回一個子字符串,從beginIndex開始截取字符串到字符串結尾。

public String substring (int beginIndex, int endIndex) :返回一個子字符串,從beginIndex到endIndex截取字符串。含beginIndex,不含endIndex。

public String replace (CharSequence target, CharSequence replacement) :將與target匹配的字符串使用replacement字符串替換。

StringBuilder

String Builder在內存中相當于一個緩沖容器,會隨著內存的關閉而消失,在地址內存中進行字符拼接時 不創建所添加字符的內存地址 節省了內存空間

JavaSE常用類及方法是什么

StringBuilder() 構造一個沒有字符的字符串構建器,初始容量為16個字符。

StringBuilder(String str) 構造一個初始化為指定字符串內容的字符串構建器

StringBuilder sb = new StringBuilder();

public StringBuilder append(任意類型):添加數據,并返回對象本身(支持鏈式調用)。

public StringBuilder reverse():字符序列進行反轉

public String toString():返回此序列中數據的字符串表示形式。 轉為String

append方法弊端:它可以拼接任意類型,但是拼接完畢,都變成字符串

Arrays類

public static String toString(int[] a):把數組轉成字符串

public static void sort(int[] a):對數組進行升序排序

包裝類與String類互相轉換

int 類型直接拼接字符串可轉為String類型

int->String

1+""

String.valueOf()方法可以將基本類型數據轉為String類型

String.valueOf(數據);

包裝類.ParseXXX方法可以將基本類型轉為String類型  注意基本類型必須轉為相對應的包裝類,以下是int轉String例子

int->String(重點)

Integer.parseInt("100")

Date類

在java,有一個java.util.Date,表示日期時間的,精確到毫秒值

Date類的構造方法:

Date() 無參構造方法:以當前的系統時間來創建出一個Date對象

Date(long date):根據指定的毫秒值,創建出一個Date對象。 指定的毫秒值,從1970年1月1日(計算機的基準時間)起經過的毫秒值

常用方法:

public long getTime() 把日期對象轉換成對應的時間毫秒值。

void setTime(long time) 將此 Date對象設置為1970年1月1日00:00:00 起經過的毫秒值

//請打印出1970年1月2號的時間的對象
    Date date2 = new Date(24 * 60 * 60 * 1000);
    System.out.println(date2);
  //獲取當前時間的毫秒值
    Date date = new Date();
    System.out.println(date.getTime());
  //將date,改成1970年1,月1號   
    date.setTime(0);
    System.out.println(date);

SimpleDateFormat

可以使用DateFormat類,但是它是一個抽象類,所以我們要用它的子類 SimpleDateFormat構造方法

SimpleDateFormat(String pattern) 使用給定模式構建一個 SimpleDateFormat ,默認日期格式符號為默認的 FORMAT區域設置。

參數pattern就是模式

字母模式:y表示面 M表示月 d表示日 H表示時 m表示分 s表示秒 S表示毫秒

中國式時間: 2019年3月11日 11點 09分 33秒 333毫秒

代碼的字母模式: yyyy年MM月dd日 HH點mm分ss秒 SSS毫秒

成員方法 :

格式化(日期 -> 文本): Date -- String

public final String format(Date date)

解析(文本 -> 日期): String -- Date

public Date parse(String source)

//根據系統時間創建Date對象
        Date date = new Date();
        System.out.println(date);

        //date不好看,格式化為中國式時間
     //SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日  HH點mm分ss秒 SSS毫秒");
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM-dd  HH:mm:ss");
        //將date格式化為String
        String time = sdf.format(date);
        System.out.println(time);

        //注意,我們一般人不會記憶毫秒值,能不能根據具體的時間(2019-03-11  11:16:02)解析成毫秒值
        //ParseException: Unparseable date: "2018年03-11  11:18:57",注意,模式必須與之前一致
        Date date1 = sdf.parse("2018年03-11  11:18:57");
        System.out.println(date1);
        System.out.println(date1.getTime());

Calendar

Calendar為抽象類,由于語言敏感性,Calendar類在創建對象時并非直接創建,而是通過靜態方法創建,返回子類對象

根據Calendar類的API文檔,常用方法有:

public int get(int field):返回給定日歷字段的值。

public void set(int field, int value):將給定的日歷字段設置為給定值。

public abstract void add(int field, int amount):根據日歷的規則,為給定的日歷字段添加或減去指定的時間量。

public Date getTime():返回一個表示此Calendar時間值(從歷元到現在的毫秒偏移量)的Date對象。

Calendar類中提供很多成員常量,代表給定的日歷字段:

字段值

含義

YEAR

MONTH

月(從0開始,可以+1使用)

DAY_OF_MONTH

月中的天(幾號)

HOUR

時(12小時制)

HOUR_OF_DAY

時(24小時制)

MINUTE

SECOND

DAY_OF_WEEK

周中的天(周幾,周日為1,可以-1使用)

import java.util.Calendar;
public class CalendarUtil {
    public static void main(String[] args) {
        //get方法
        // 創建Calendar對象
        Calendar cal = Calendar.getInstance();
        // 設置年 
        int year = cal.get(Calendar.YEAR);
        // 設置月
        int month = cal.get(Calendar.MONTH) + 1;
        // 設置日
        int dayOfMonth = cal.get(Calendar.DAY_OF_MONTH);
        //set方法
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.YEAR, 2020);
        //add方法
        cal.add(Calendar.DAY_OF_MONTH, 2); // 加2天
        cal.add(Calendar.YEAR, -3); // 減3年
        //getTime方法
        Date date = cal.getTime();
    }    
}

System類

public static long currentTimeMillis():返回以毫秒為單位的當前時間。

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length):將數組中指定的數據拷貝到另一個數組中。

currentTimeMillis方法

import java.util.Date;

public class SystemDemo {
    public static void main(String[] args) {
           //獲取當前時間毫秒值
        System.out.println(System.currentTimeMillis()); // 1516090531144
    }
}

arraycopy方法

JavaSE常用類及方法是什么

參數序號

參數名稱

參數類型

參數含義

1

src

Object

源數組

2

srcPos

int

源數組索引起始位置

3

dest

Object

目標數組

4

destPos

int

目標數組索引起始位置

5

length

int

復制元素個數

import java.util.Arrays;
public class Demo11SystemArrayCopy {
    public static void main(String[] args) {
        int[] src = new int[]{1,2,3,4,5};
        int[] dest = new int[]{6,7,8,9,10};
        System.arraycopy( src, 0, dest, 0, 3);
        /*代碼運行后:兩個數組中的元素發生了變化
         src數組元素[1,2,3,4,5]
         dest數組元素[1,2,3,9,10]
        */
    }
}

Random

構造方法:

Random() 創建一個新的隨機數生成器。

成員方法 :

int nextInt() 從這個隨機數生成器的序列返回下一個偽隨機數,均勻分布的 int值。

int nextInt(int bound) ,均勻分布 返回值介于0(含)和指定值bound(不包括),從該隨機數生成器的序列繪制

Random random = new Random();
        /*for (int i = 0; i < 10; i++) {
            System.out.println(random.nextInt());
        }*/
        /*for (int i = 0; i < 10; i++) {
            int j = random.nextInt(10);
            System.out.println(j);
        }*/
        //來一個隨機值,這個數據的范圍必須是1~100,33~66 54~78
        //random.nextInt(100);//0~99 +1 -> 1~100
        /*33~66 - 33 -> 0~33
        for (int i = 0; i < 10; i++) {
            System.out.println(random.nextInt(34) + 33);
        }*/
        //54~78 - 54 -> 0~24
        for (int i = 0; i < 10; i++) {
            System.out.println(random.nextInt(25) + 54);
        }

比較器Comparable<T> 和 Comparator<T>

java.lang Comparable<T> : 該接口對實現它的每個類的對象強加一個整體排序。 這個排序被稱為類的自然排序 ,類的compareTo方法被稱為其自然比較方法 。

java中規定 某個類只要實現了Comparable 接口之后,才能通過重寫compareTo()具備比較的功能。

抽象方法:

int compareTo(T o) 將此對象(this)與 指定( o )的對象進行比較以進行排序。

this > o : 返回正數

this = o : 返回0

this < o : 返回負數

' this - o : 表示按照升序排序。 o - this : 表示按照降序排序。

' 小結 : 如果Java中的對象需要比較大小,那么對象所屬的類要實現Comparable接口,然后重寫compareTo(T o)實現比較的方式。

public class Student implements Comparable<Student>{
    ....
    @Override
    public int compareTo(Student o) {
        return this.age-o.age;//升序
    }
}

java.util Comparator<T> : 比較器接口。

抽象方法:

int compare( T o1, T o2 ) 比較其兩個參數的大小順序。

比較器接口的使用場景:

1. Arrays.sort() : static <T> void sort( T[] a, Comparator c)

2. Collections 集合工具類 : void sort(List<T> list, Comparator<> c) 根據指定的比較器給集合中的元素進行排序。

3. TreeSet 集合 : 構造方法 TreeSet( Comparator c )

補充 : 在后面我還會介紹JDK1.8 的新特性(Lambda  函數式代碼優化)  進行優化此類接口

ArrayList<String> list = new ArrayList<String>();
        list.add("cba");
        list.add("aba");
        list.add("sba");
        list.add("nba");
        //排序方法  按照第一個單詞的降序
        Collections.sort(list, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                int rs = o2.getCj() - o1.getCj();
                return rs==0 ? o1.getAge()-o2.getAge():rs;
//                return o2.charAt(0) - o1.charAt(0);
            }
        });
        System.out.println(list);

Comparable 和 Comparator 區別:

Comparable : 對實現了它的類進行整體排序。

Comparator : 對傳遞了此比較器接口的集合或數組中的元素進行指定方式的排序。

感謝你能夠認真閱讀完這篇文章,希望小編分享JavaSE常用類及方法是什么內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巨野县| 长泰县| 高阳县| 神木县| 巩义市| 乳山市| 信宜市| 兴义市| 新龙县| 横山县| 乐安县| 绥化市| 岐山县| 潍坊市| 安宁市| 汤阴县| 迁西县| 临朐县| 文登市| 多伦县| 安岳县| 客服| 泰和县| 安乡县| 昔阳县| 敦化市| 海南省| 望都县| 台中市| 汾阳市| 保亭| 元氏县| 奇台县| 探索| 淳化县| 柏乡县| 彰化县| 清涧县| 天峨县| 南汇区| 蒲城县|