java语言入门 (三)常用数据类型处理类 (3)

1.0 字符串的处理

1.1 String 类

1.0 构造方法:

public String(); 
public String(String s);
public String(StringBuffer  buf);
public String(char value[]);

获取字符长的长度

/*
下面这俩个代码 意思一样
String s = new String("hello good 你");

*/
String s = "hello good 你";
        System.out.println(s.length());

结果是12 注意空格也算字符串长度
2.0 字符串的拼接

  1. 用 + 号 eg: String a = “A”; String b = “B” 则String c = a+b; 就是AB 也就是String c = “AB”;
    2.还是上面的 a a.concat(“B”) 的值就是AB

3.0 比较两个字符串

  1. boolean equal(Object obj); //相等返回true
  2. boolean equalsIgnoreCase(String Str);// 忽略大小写判断两个串是否相等
  3. int compareTo(String Str); //当前串大 返回>0;当前串小 返回 < 0 相等 = 0
    按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。

我们看下面的例子

String a  = "asd";
String b  = "asd";
//那么下面两个值分别是多少呢?
a.equal(b)
a == b

//答案是 都是true   ==  是比较两个引用是否执行同一个对象  
//那为什么会是true呢
//原因是因为  java对字符串进行优化处理 相同字符串只存一个
//所以  会是true
//如果我们不想让他存的是一个怎么办呢 
//就要new一个String  如下
String a = "asdad";
String b = new String("asdad");

//这样  a==b  的值就是false了

特别的 下面的代码是等价的
String a = b.intern();
String a = b;

4.0 字符串的提取与替换

查询对应的api文档 我知道jdk1.6 有中文文档 别的不知道 自己百度 jdk1.6 中文文档就ok了

1.2 StringBuffer 类

String类不能改变串的内容 只能创建一个新串来实现串的变化,创建太多的对象不仅浪费内存,效率也低

构造方法

public StringBuffer()
public StringBuffer(int length)//创建一个长度为length的StringBuffer对象
public StringBuffer(String str)//用String 类型的串 初始化StringBuffer对象

//这个类有许多对字符串处理的方法,自己查api

2.0 基本数据类型的包装类

基本数据类型包装类
intInteger
charcharacter
doubleDouble
floatFloat
booleanBoolean
byteByte
longLong
shortShort

封装类有许多方法,都可以调用 例如

如果是
int a =10;
那么就不能调用相应的方法

如果是
Integer a = 10;
就可以调用类中的方法
a.intValue()

其他的同理 有许多这样的方法 自己查阅文档,我们要锻炼自己查文档的能力

3.0 日期和时间

Date 类

public static void main(String[] args) {
        Date  d =new Date();
        long a = d.getTime();
        System.out.println(d.toString());

    }

结果:
Thu Apr 19 20:28:13 CST 2018

其中a的值 是相对于1970年1月1日 过去的毫秒数

另一种方法

public static void main(String[] args) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");

        System.out.println(dateFormat.format(new Date()));
}

结果为 
2018-04-19 20-41-47

其中
SimpleDateFormat  这个类用来格式化时间  其中
yyyy 代表年 例如 2018   yy就会显示18
MM   代表月
dd   代表日

HH  代表时
mm   代表分
ss  代表秒

Calendar类

public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        System.out.println("年:"+calendar.get(Calendar.YEAR));
        System.out.println("月:"+calendar.get(Calendar.MONTH));  //如果是1 月 则返回0  2月返回1
        System.out.println("日:"+calendar.get(Calendar.DAY_OF_MONTH));
        System.out.println("时:"+calendar.get(Calendar.HOUR_OF_DAY));
        System.out.println("分:"+calendar.get(Calendar.MINUTE));
        System.out.println("秒:"+calendar.get(Calendar.SECOND));
    }

欢迎留言评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值