博主:命運之光
專欄:Java零基礎入門
?
學習目標
掌握Java各種常用類庫的使用方法。
目錄
Java類庫
字符串String
String 概述
創(chuàng)建字符串對象的2種方式
String類的特點
創(chuàng)建字符串對象的2種方式
總結:創(chuàng)建字符串對象的2種方式區(qū)別
字符串的比較
字符串的比較
String類其它常用API
日期類
Date類
SimpleDateFormat 類
Calendar類
包裝類
其它常用類
Math類
Random類
Java類庫
????Java語言由語法規(guī)則和類庫兩部分組成。語法規(guī)則說明了Java程序的書寫規(guī)范;
????類庫是Java編程的API(Application Program Interface),它可以幫助開發(fā)者方便、快捷地開發(fā)Java程序。
????Application Programming Interface,應用程序編程接口,Java中的API是指JDK提供的各種功能的Java類庫。Java API是采用包(package)的形式組織起來的,每個包內(nèi)的類和接口根據(jù)繼承關系組成的樹型結構進行組織。
API是程序員和Java語言之間溝通的橋梁
字符串String
String 概述
- String 類代表字符串,Java 程序中所有的雙引號字符串,都是 String 類的對象;
- String類定義的變量用于指向字符串對象,然后操作字符串;
- String 類在 java.lang 包下,使用的時候不需要導包;
- String對象的字符內(nèi)容是存儲在一個字符數(shù)組value[]中的。
創(chuàng)建字符串對象的2種方式
方式一:直接使用“”定義。(推薦方式)
String name = “命運之光";
方式二:通過String類的構造器創(chuàng)建對象
String類的特點
- String常被稱為不可變字符串類型,它的對象在創(chuàng)建后不能被更改;
- 以“”方式給出的字符串對象,在字符串常量池中存儲。
創(chuàng)建字符串對象的2種方式
方式一:通過字符串常量的方式
String str1 = "abc";
方式二:通過new一個對象方式創(chuàng)建
String str2 = new String("abc");
總結:創(chuàng)建字符串對象的2種方式區(qū)別
通過構造方法創(chuàng)建
????通過 new 創(chuàng)建的字符串對象,每一次 new 都會申請一個內(nèi)存空間,雖然內(nèi)容相同,但是地址值不同。
直接賦值方式創(chuàng)建
????以“”方式給出的字符串,只要字符序列相同(順序和大小寫),無論在程序代碼中出現(xiàn)幾次,JVM 都只會建立一個 String 對象,并在字符串池中維護。
字符串的比較
==號的作用
- 比較基本數(shù)據(jù)類型:比較的是具體的值
- 比較引用數(shù)據(jù)類型:比較的是對象地址值
注:字符串的內(nèi)容比較不適合用“==”比較,使用equals方法
字符串的比較
public class text1{
public static void main(String[] args){
//構造方法的方式得到對象
char[] chs = {'a','b','c'};
String s1 = new String(chs);
String s2 = new String(chs);
//直接賦值的方式得到對象
String s3 ="abc";
String s4 ="abc";
//比較字符串對象地址是否相同
System.out.println(s1==s2);
System.out.println(s1==s3);
System.out.println(s3==s4);
System.out.println("--------");
//比較字符串內(nèi)容是否相同
System.out.println(s1.equals (s2));
System.out.println(s1.equals(s3));
System.out.println(s3.equals(s4));
}
}
String類其它常用API
日期類
Date類
????在Java之中,如果要想表示出日期型數(shù)據(jù),則使用java.util.Date類完成,Date類代表當前所在系統(tǒng)的日期時間信息,精確到毫秒。
Date類的常用方法
????例子:
import java.util.Date;
public class text1 {
public static void main(String[] args) {
Date d1 = new Date();
System.out.println(d1);
long date = 1000*60*60;
Date d2 = new Date(date);
System.out.println(d2);
}
}
????案例:時間毫秒值表示時間的代碼
import java.util.Date;
public class text1 {
public static void main(String[] args) {
Date d = new Date();
long time = d.getTime();
System.out.println(time);
}
}
SimpleDateFormat 類
????雖然使用java.util.Date類可以明確的取得當前的日期時間,但是最終數(shù)據(jù)的顯示格式并不方便閱讀。如果要對顯示的日期時間進行格式轉換,則可以通過java.text.SimpleDateFormat類完成。
常用方法
格式化的時間形式的常用的模式對應關系如下:
- y 年
- M 月
- d 日
- H 時
- m 分
- s 秒
2023-1-19 10:27:06——yyyy-MM-dd HH:mm:ss
2023年5月1日 3:17:09 ——yyyy年MM月dd日 HH:mm:ss
????例子:將日期格式化顯示(Date型數(shù)據(jù)變?yōu)榱薙tring型數(shù)據(jù))
import java.text.SimpleDateFormat;
import java.util.Date;
public class text1{
public static void main(String[] args) throws Exception {
Date date = new Date(); // 實例化Date類對象
// 實例化SimpleDateFormat類對象,同時定義好要轉換的目標字符串格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String str = sdf.format(date); // 將Date型變?yōu)榱薙tring型
System.out.println(str);
}
}
????例子:將字符串轉換為日期
import java.text.SimpleDateFormat;
import java.util.Date;
public class text1{
public static void main(String[] args) throws Exception {
String str = "2022-04-27 07:15:22.111" ;// 字符串由日期時間組成
// 實例化SimpleDateFormat類對象,同時定義好要轉換的目標字符串格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") ;
Date date = sdf.parse(str) ; // 將字符串變?yōu)槿掌谛蛿?shù)據(jù)
System.out.println(date);
}
}
Calendar類
- Calendar代表了系統(tǒng)此刻日期對應的日歷對象。
- Calendar是一個抽象類,不能直接創(chuàng)建對象。
Calendar日歷類創(chuàng)建日歷對象的方法:
常用方法:
注:通過get(int field)方法來取得想要的時間信息。比如YEAR、MONTH、DAY_OF_WEEK、HOUR_OF_DAY 、 MINUTE、SECOND
????例子:Calendar類
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class text1{
public static void main(String[] args) {
//獲取日歷類對象
Calendar c =Calendar.getInstance();
//public int get(int field):返回給定日歷字段的值
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1; //取得月數(shù)據(jù),從0開始
int date = c.get(Calendar.DATE);
System.out.println(year + "年" + month + "月" + date + "日");
//public final void set(int year,int month,int date):設置當前日歷的年月日
c.set(2050,10,10);
year = c.get(Calendar.YEAR);
month = c.get(Calendar.MONTH) + 1;
date = c.get(Calendar.DATE);
System.out.println(year + "年" + month + "月" + date + "日");
}
}
注意:
- 獲取月份時:一月是0,二月是1,以此類推,12月是11
- 獲取星期時:周日是1,周二是2 , 。。。。周六是7
包裝類
基本類型包裝類
即為將基本數(shù)據(jù)類型封裝成對象,以下為八種基本類型對應的包裝類:
除了Integer和Character類,其它包裝類的名稱和基本數(shù)據(jù)類型的名稱一致,只是類名的第一個字母需要大寫。
為什么提供包裝類?
- Java為了實現(xiàn)一切皆對象,可以在對象中定義更多的功能方法操作該數(shù)據(jù);
- 集合和泛型只能支持包裝類型,不支持基本數(shù)據(jù)類型。
包裝類和基本數(shù)據(jù)類型在進行轉換時,引入了裝箱和拆箱的概念。
- 自動裝箱:自動將基本數(shù)據(jù)類型的值轉為引用數(shù)據(jù)類型。
- 自動拆箱:自動將引用數(shù)據(jù)類型的對象轉為基本數(shù)據(jù)類型。
????例子:自動拆箱和自動裝箱
public class text1{
public static void main(String[] args) {
int num1 = 20;
Integer number1 = num1; // 自動裝箱
System.out.println("number1:"+number1);
Integer number2 = new Integer(18);
int num2 = number2; //自動拆箱
System.out.println("num2:"+num2);
}
}
在使用包裝類時,需要注意以下幾點:
①除了Character外,包裝類都有valueOf(String s)方法,可以根據(jù)String類型的參數(shù)創(chuàng)建包裝類對象,但參數(shù)字符串s不能為null,而且字符串必須是可以解析為相應基本類型的數(shù)據(jù),否則雖然編譯通過,但運行時會報錯。具體示例如下:
Integer i = Integer.valueOf("123"); // 合法
Integer i = Integer.valueOf("12a"); // 不合法
②包裝類都重寫了Object類中的toString()方法,以字符串的形式返回被包裝的基本數(shù)據(jù)類型的值。
具體示例如下:
String s1 = Integer.toString(4);
String s2 = Double.toString(2.6);
③除了Character外,包裝類都有parseXxx(String s)的靜態(tài)方法,將字符串轉換為對應的基本類型的數(shù)據(jù)。參數(shù)s不能為null,而且同樣必須是可以解析為相應基本類型的數(shù)據(jù),否則雖然編譯通過,但運行時會報錯。具體示例如下:
int a = Integer.parseInt(“123”); //合法
int b = Integer.parseInt(“123a”); //非法
總結:
- 包裝類的變量的默認值可以是null。
- 可以把基本類型的數(shù)據(jù)轉換成字符串類型(不常用)
調用toString()方法得到字符串結果。
格式:Integer.toString(基本類型的數(shù)據(jù))。
- 可以把字符串類型的數(shù)值轉換成真實的基本數(shù)據(jù)類型(常用)
調用parseXXX()方法得到真實基本數(shù)據(jù)類型結果。
格式:
Integer.parseInt(“字符串類型的整數(shù)”)
Double.parseDouble(“字符串類型的小數(shù)”)。
其它常用類
Math類
????Math就是一個專門進行數(shù)學計算的操作類,里面提供了一系列的數(shù)學計算方法(例如:對數(shù)、絕對值、冪運算等)。在Math類里面提供的一切方法都是static型的方法,所以可以直接由類名稱進行調用。在整個Math類中有一個方法需要為讀者特別說明,那就是四舍五入的操作方法(public static long round(double a))。
????例子:觀察四舍五入
public class text1{
public static void main(String[] args) throws Exception {
System.out.println(Math.round(15.5));
System.out.println(Math.round(-15.5));
System.out.println(Math.round(-15.51));
}
}
Random類
- java.util.Random是一個專門負責產(chǎn)生隨機數(shù)的操作類
????例子:產(chǎn)生10個不大于100的正整數(shù)(0 ~ 99)
import java.util.Random;
public class text1{
public static void main(String[] args) throws Exception {
Random rand = new Random() ;
for (int x = 0 ; x < 10 ; x ++) {
System.out.print(rand.nextInt(100) + "、");
}
}
}
文章來源:http://www.zghlxwxcb.cn/news/detail-443619.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-443619.html
到了這里,關于【Java零基礎入門篇】第 ⑦ 期 - 常用類庫的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!