String
比较字符串是否相等 直接用等号还没法比较出来,要使用equals( )可以比较出来字符串的文本是否相等
友情提示:
- 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1
- 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引;如果没有匹配结果,返回 -1
- 使用 substring(beginIndex , endIndex) 进行字符串截取时,包括 beginIndex 位置的字符,不包括 endIndex 位置的字符
那么,“==” 和 equals() 有什么区别呢?
==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象
equals(): 比较存储在两个字符串对象中的内容是否一致
当频繁操作字符串时,就会额外产生很多临时变量。使用 StringBuilder 或 StringBuffer 就可以避免这个问题。至于
StringBuilder 和StringBuffer ,它们基本相似,不同之处,StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。因此一般情况下,如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。
Java中的包装类
基本数据类型有int、float、double、boolean、char等。基本数据类型是不具备对象的特性的,比如基本数据类型不能调用方法、功能简单。为了让基本数据类型也具备对象的特性,Java为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。
基本类型和包装类之间的对应关系:
包装类主要提供了两大类的方法:
1、将本类型和其他类型进行转换的方法
2、将字符串和本类型及包装类互相转换的方法
就是说包装类型比基本类型的方法更多,基本类型不能调用方法
这些个包装类都在 java.lang中
日期
Date和SimpleDateFormat类表示时间
Date 类在 java.lang中
SimpleDateFormat类在 java.text中,用来格式化时间
import java.text;
import java.lang;
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//调用format()方法,格式化时间,转换为指定格式字符串
String today = sdf.format(d);
//调用parse()方法,将文本字符串,转换为日期
Date date = sdf.parse(today);
System.out.println(today);
Calendar 类的应用
java.util.Calendar 类是一个抽象类,可以通过调用getInstance() 静态方法获取一个 Calendar 对象,此对象已由当前日期时间初始化,即默认代表当前时间,如 Calendar c = Calendar.getInstance();
// 创建Calendar对象
Calendar c = Calendar.getInstance();
// 将Calendar对象转换为Date对象
Date date = c.getTime();
// 创建SimpleDateFormat对象,指定目标格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 将日期转换为指定格式的字符串
String now = sdf.format(date);
System.out.println("当前时间:" + now);