本節主要知識點:
1、枚舉enum
2、註解、標誌
3、Object
4、String
5、Date
一、數據類型
1、基本類型:int、float、double、boolean、char
2、包裝類型:Integer、Float、Double、Boolean、Character、String
3、基本類型聲明變量,包裝類型聲明對象。
4、基本類型由包裝類型衍生出來。
二、枚舉
1、枚舉關鍵字:enum
2、枚舉多用於約束賦值,枚舉中聲明的值不能是數字和布爾類型類型。
3、一般來說,枚舉中聲明的值具有實際價值。
例如:
public enum Flag
{
MAN,WOMAN,藍色,紅色,a,b,c
}
三、註解、標誌
1、標誌:c、l、e、s、f
2、註解:@override、@Test、@SuppressWarings
3、註解是放在方法上面的,用於實現方法的某些功能。
四、Object
1、在JAVA中,Object是所有類的父類,任何基本類型或者包裝類型的變量對象均可把值交給Object的對象。
2、三種常見的方法:
(1)getClass()
(2)toString()
(3)equals()
五、字符串類型String
1、String類重寫了Object中toString和equals方法,其中toString方法的目的是聲明String的對象在輸出的時候輸出的是數據,而equals方法在String中比較是數據。
2、十種常用的String方法
(1)length():字符竄的長度,簡單來講就是字符的個數。
public void test01(){
String str="Hello";
System.out.println(str.length());
//輸出結果【5】
}
(2)substring():截取一段字符串。
注意:substring方法用於截取,如果只有一個參數,那麼代表截取的起始位置,起始位置通過下標描述,一直截取到字符竄結束,如果有兩個參數,那麼這兩個參數分別代表起始位置和結束位置,起始位置通過下標描述,而結束位置是從1開始計數的。
public void test02(){
String str="Hello";
String s=str.substring(1, 3);
System.out.println(s);
//輸出結果【el】
}
(3)charAt():獲得指定下標位置的字符。
public void test03(){
String str="Hello";
char s=str.charAt(1);
System.out.println(s);
//輸出結果【e】
}
(4)indexOf():獲得字符竄在指定某個字符竄中第一次出現的位置下標,-1表示不存在,0表示第一個字符。
public void test04(){
String str="Hello World!";
System.out.println(str.indexOf('o'));
//輸出結果【4】
}
(5)lastIndexOf():獲得字符竄在指定某個字符竄中最後一次出現的位置下標。
public void test05(){
String str="Hello World!";
System.out.println(str.lastIndexOf('o'));
//輸出結果【7】
}
(6)concat():連接,需要賦值。
public void test06(){
String a="Hello ";
String b="World!";
a=a.concat(b);
System.out.println(a);
//輸出結果【Hello World!】
}
(7)split():分割,通過某個分割點分割,分割後,分割點不會出現在數組的元素中。
public void test07(){
String message="Hello World!";
String[] str=message.split("o");
for(String s:str)
{
System.out.print(s);
}
//輸出結果【Hell Wrld!】
}
(8)replace:用於字符的替換。
public void test08(){
String message="Hello World!";
message=message.replace('o','p');//用於替換字符,也是所有都替換
System.out.println(message);
//輸出結果【Hellp Wprld!】
}
(9)replaceAll:用於字符竄的替換。
public void test09(){
String message="Hello World!";
message=message.replaceAll("World", "me");
System.out.println(message);
//輸出結果【Hello me!】
}
(10)contains:判斷字符或者字符竄是否存在。
public void test10(){
String message="Hello World!";
System.out.println(message.contains("o"));
//輸出結果【true】
System.out.println(message.contains("a"));
//輸出結果【false】
}
六、Date
1、輸出靜態年月日時間
public void test11()
{
Date time=new Date();
int year=time.getYear();
System.out.println(year+1900);//自1900年計算 &輸出結果【2018】
int month=time.getMonth();//返回0-11
System.out.println(month+1);//&輸出結果【7】
int day=time.getDate();
System.out.println(day);//&輸出結果【11】
int week=time.getDay();//返回值0-6,0代表星期天
System.out.println(week);//&輸出結果【3】
int hour=time.getHours();
int minute=time.getMinutes();
int second=time.getSeconds();
System.out.println(hour+":"+minute+":"+second);//&輸出結果【19:56:42】
long lg=time.getTime();//獲得自1970年1月1日零時零分零秒到今時今日的毫秒數
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd EE HH:mm:ss");
String dy=sdf.format(time);
System.out.println(dy);//&輸出結果【2018-07-11 星期三 19:56:42】
}
2、輸出動態時間
public void test12()
{
/*
* Date
* 1.輸出 靜態的時間 2018-07-11,星期三,14:58:45
* 2.輸出 動態的時間 2018-07-11,星期三,14:58:45
* 3.輸入 時間,倒計時
*/
while(true)
{
Date date=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(date));
try
{
Thread.sleep(1000);//1000毫秒=1秒
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
3、倒計時
public void test13() throws InterruptedException
{
int limitSec = 100;
System.out.println("開始計時"+limitSec);
while(limitSec>0)
{
System.out.println("還有"+ --limitSec +"秒");
Thread.sleep(1000);
}
System.out.println("時間結束");
}
七、Random與Math
1、生成1-500的隨機數
public void test14()
{
Random r=new Random();
List<Integer> list=new ArrayList<Integer>();
for(int i=1;i<=10;i++)
{
int m=r.nextInt(500);
list.add(m);
System.out.println(m);
}
}
2、關於數學函數
public void test15(){
System.out.println(Math.E);
System.out.println(Math.PI);
System.out.println(Math.random());//[0,1)
int num=(int)(Math.random()*100);//0-99
System.out.println(num);
System.out.println(Math.abs(-100));//絕對值
System.out.println(Math.max(5,4));
System.out.println(Math.min(5,4));
System.out.println(Math.round(4.4));//四捨五入
System.out.println(Math.floor(4.7));//小於4.7的最大整數
System.out.println(Math.ceil(4.7));//大於4.7的最小整數
}