本节主要知识点:
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的最小整数
}