目录
2.3、所有包装类都可将与之对应的基本数据类型作为参数,来构造它们的实例
5.1、String类位于java.lang包中,具有丰富的方法
1、枚举
1.1、概念
枚举指由一组固定的常量组成的类型
1.2、关键字
enum
1.3、使用方式
1)enum部分
public enum Sex {
男,女;
}
2) Student部分
public class Student {
private String name;
private Sex sex;
public static void main(String[] args) {
Student student=new Student();
student.name="张三";
// student.sex="男";
student.sex=Sex.男;
System.out.println("姓名:"+student.name+",性别:"+student.sex);
}
}
2、包装类
2.1、概念
1)包装类把基本类型数据转换为对象;
2)每个基本类型在java.lang包中都有一个相应的包装类;
2.2、包装类的作用
1)提供了一系列实用的方法;
2)集合不允许存放基本数据类型数据,存放数字时,要用包装类型;
2.3、所有包装类都可将与之对应的基本数据类型作为参数,来构造它们的实例
1)public Type(type value)
例:
Integer i=new Integer(1);
2)除Character类外,其他包装类可将一个字符串作为参数构造它们的实例
3)public Type(String value)
例:
Integer i=new Integer("123");
2.4、注意事项
1)Boolean类构造方法参数为String类型时,若该字符串内容为true(不考虑大小写),则该Boolean对象表示true,否则表示false
2)当Number包装类构造方法参数为String 类型时,字符串不能为null,且该字符串必须可解析为相应的基本数据类型的数据,否则编译不通过,运行时会抛出NumberFormatException异常
2.5、包装类的常用方法
1)XXXValue():包装类转换成基本类型
2)toString():以字符串形式返回包装对象表示的基本类型数据(基本类型->字符串)
3) parseXXX():把字符串转换为相应的基本数据类型数据(Character除外)(字符串->基本类型)
4)valueOf()
a、所有包装类都有如下方法(基本类型->包装类)
public static Type valueOf(type value)
例:
Integer intValue = Integer.valueOf(21);
b、除Character类外,其他包装类都有如下方法(字符串->包装类)
public static Type valueOf(String s)
例:
Integer intValue = Integer.valueOf("21");
2.5、装箱和拆箱
1)装箱:基本类型转换为包装类的对象
2)拆箱:包装类对象转换为基本类型的值
2.6、包装类的特点
1)JDK1.5后,允许基本数据类型和包装类型进行混合数学运算
2)包装类并不是用来取代基本数据类型的
在基本数据类型需要用对象表示时使用
3、Math类
java.lang.Math类提供了常用的数学运算方法和两个静态常量E(自然对数的底数) 和PI(圆周率)
4、Random类
4.1、生成随机数的其他方式
java.util.Random类
Random rand=new Random(); //创建一个Random对象
for(int i=0;i<20;i++){//随机生成20个随机整数,并显示
int num=rand.nextInt(10);//返回下一个伪随机数,整型的
System.out.println("第"+(i+1)+"个随机数是:"+num);
}
用同一个种子值来初始化两个Random 对象,然后用每个对象调用相同的方法,得到的随机数也是相同的
5、String类
5.1、String类位于java.lang包中,具有丰富的方法
计算字符串的长度、比较字符串、连接字符串、提取字符串
5.2、length()方法
String类提供了length()方法,确定字符串的长度
返回字符串中的字符数
5.3、equals()方法
a、String类提供了equals( )方法,比较存储在两个字符串对象的内容是否一致
b、equals()方法比较原理
equals():检查组成字符串内容的字符是否完全一致
c、“==”和equals()有什么区别呢?
==:判断两个字符串在内存中的地址, 即判断是否是同一个字符串对象
5.4、字符串连接
1)使用“+”;
2)使用String类的concat()方法;
5.5、字符串常用提取方法
6、StringBuffer类
6.1、StringBuffer
对字符串频繁修改(如字符串连接)时,使用StringBuffer类可以大大提高程序执行效率
6.2、StringBuffer声明
StringBuffer strb = new StringBuffer();
StringBuffer strb = new StringBuffer("aaa");
6.3、StringBuffer的使用
sb.toString(); //转化为String类型
sb.append("**"); //追加字符串
sb.insert (1, "**"); //插入字符串
6.4、String是不可变对象
1)经常改变内容的字符串最好不要使用String
2)StringBuffer是可变的字符串
3)字符串经常改变的情况可使用StringBuffer,更高效
4)JDK5.0后提供了StringBuilder,等价StringBuffer
7、操作日期时间
7.1、获取当前日期
a、java.util.Date类:表示日期和时间
提供操作日期和时间各组成部分的方法
b、java.text.SimpleDateFormat类
//创建日期对象
Date date = new Date();
//定制日期格式
SimpleDateFormat formater = new SimpleDateFormat("yyyy- MM-dd HH:mm:ss");
String now = formater.format(date);
System.out.println(now);
7.2、Calendar类
1)抽象类,java.util.Calendar
2)用于设置和获取日期/时间数据的特定部分