java中的常用类

• 基本数据类型的包装类

包装类是将基本类型封装到一个类中包含属性和方法,方便对象操作
包装类位于java.lang包中

包装类和基本类型

▪ 基本数据类型转换为包装类

Integer intValue=new Integer(21);
Integer intValue=new Integer("21");
Integer intValue=Integer.valueOf("21");

▪ 包装类转换成基本类型

Integer integerld=new Integer(25);
int intld=integerld.intValue();

▪ 基本类型和包装类的自动转换

Integer intObject=5;
int intValue=intObject;

包装类并不是用来取代基本类型的

自动装箱和自动拆箱 (auto-boxing & unboxing)
▪ 自动装箱
– 基本类型就自动地封装到与它相同类型的包装中,如:
– Integer i = 100;
– 本质上是,编译器编译时为我们添加了:
– Integer i = Integer.valueOf(100);
▪ 自动拆箱
– 包装类对象自动转换成基本类型数据。如:
– int a = new Integer(100);
– 本质上,编译器编译时为我们添加了:
– int a = new Integer(100).intValue();


• 字符串相关类
 不可变字符序列:String

String类位于java.lang包中,具有丰富的方法
– 计算字符串的长度、比较字符串、连接字符串、提取字符串

▪ Java字符串就是Unicode字符序列,例如串“Java”就是4个Unicode字符J,a,v,a组成的。
▪ Java允许使用符号"+"把两个字符串连接起来
– String s1 = “Hello”;String s2 = “World!”;
– String s = s1 + s2; //HelloWorld!

String类的常用方法

 char charAt(int index)                             返回字符串中第index个字符。
 boolean equals(String other)                  如果字符串与other相等,返回true
 boolean equalsIgnoreCase(String other)    如果字符串与other相等(忽略大小写),则返回true
 int indexOf(String str)    lastIndexOf(String str,int idx)
 int length()                                              返回字符串的长度。
 String replace(char oldChar,char newChar)   返回一个新串,它是通过用 newChar 替换此字符串中出现的所有oldChar而生成的

 boolean startsWith(String prefix)            如果字符串以prefix开始,则返回true
 boolean endsWith(String prefix)             如果字符串以prefix结尾,则返回true
 String substring(int beginIndex)
 String substring(int beginIndex,int endIndex)
返回一个新字符串,该串包含从原始字符串beginIndex到串尾戒endIndex-1的所有字符
 String toLowerCase()
返回一个新字符串,该串将原始字符串中的所有大写字母改成小写字母
 String toUpperCase()
返回一个新字符串,该串将原始字符串中的所有小写字母改成大写字母
 String trim()
返回一个新字符串,该串删除了原始字符串头部和尾部的空格

字符串长度 length()方法

字符串比较

equals判断字符串值相等,==判断字符串对象引用相等!

字符串连接:1、使用“+”
                      2、使用String类的concat()方法

常用提取方法

方 法
public int indexOf(int ch)搜索第一个出现的字符ch(或字符串value)
public int indexOf(String value)
public int lastIndexOf(int ch)搜索最后一个出现的字符ch(或字符串value)
public int lastIndexOf(String value)
字符串常用提取方法
方 法说明
public String substring(int index)提取从位置索引开始的字符串部分
public String substring(int
beginindex, int endindex)
提取beginindex和endindex之间的字符串部分
public String trim() 返回一个前后不含任何空格的调用字符串的副本

字符串拆分
String类提供了split()方法,将一个字符串分割为子字符串,结果作为字符串数组返回


 可变字符序列:StringBuffer、StringBuilder

StringBuffer:String增强版,线程安全
StringBuilder:字符串缓冲区,是一个容器,线程不安全

StringBuffer类

public class sbAppend {
public static void main(String[ ] args) {
StringBuffer sb = new StringBuffer("青春无悔");
int num=110;
StringBuffer sb1 = sb.append("我心永恒");
System.out.println(sb1);
StringBuffer sb2 = sb1.append('啊');
System.out.println(sb2);
StringBuffer sb3 = sb2.append(num);
System.out.println(sb3);
}

StringBuffer类

▪ 利用StringBuffer类的length()和insert ()方法实现需求
▪ 将一个数字字符串转换成逗号分隔的数字串,即从右边开始每三个数字用逗号分隔

public class TestInsert {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一串数字: ");
String nums = input.next();
StringBuffer str=new StringBuffer(nums);
for(int i=str.length()-3;i>0;i=i-3){
str.insert(i,',');
}
System.out.print(str);
}
}

字符串选用
▪ String:不可变字符序列
▪ StringBuilder:可变字符序列、效率高、线程不安全
▪ StringBuffer:可变字符序列、效率低、线程安全
▪ String使用陷阱:
– string s="a"; //创建了一个字符串
s=s+"b"; //实际上原来的"a"字符串对象已经丢弃了,现在又产生了一个字符串
s+"b"。如果多次执行这些改变串内容的操作,会导致大量副本字符串对象存留在内
存中,降低效率。如果这样的操作放到循环中,会极大影响程序的性能。

• 时间处理相关类

Date类:表示日期和时间
提供操作日期和时间各组成部分的方法

DateFormat类 与SimpleDateFormat类
用于定制日期时间的格式

Date date = new Date(); //创建日期对象
SimpleDateFormat formater = new SimpleDateFormat("yyyy-
MM-dd HH:mm:ss");//定制日期格式
String now = formater.format(date);
System.out.println(now);

Calendar类:
抽象类
用于设置和获取日期/时间数据的特定部分
Calendar类提供一些方法和静态字段来操作日历

方法或属性说明
int get(int field)返回给定日历字段的值
MONTH指示月
DAY_OF_MONTH指示一个月中的某天
DAY_OF_W EEK指示一个星期中的某天


• Math类

▪ 包含了常见的数学运算函数。
▪ random()生成[0,1)之间的随机浮点数
▪ 生成:0-10之间的任意整数:
– int a = (int)(10*Math.random());
▪ 生成:20-30之间的任意整数:
– int b = 20 + (int)(10*Math.random());

枚举类型:
1. 只能够取特定值中的一个
2. 使用enum关键字
3. 所有的枚举类型隐性地继承自 java.lang.Enum。(枚举实质上还是类!
而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是publi
c static final的。可以直接通过枚举类型名直接使用它们。)
4. 强烈建议当你需要定义一组常量时,使用枚举类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值