java String字符串、时间操作 、抽象类、接口

内容来自中软国际java培训班。

一、String、StringBuffer和StringBuilder类

字符串的创建、修改和操作是通过该3个类来完成的。

java中没有内置的字符串类型,是标准java库中包含一个String类。

  1. 定义一个字符串:通过字符串常量定义一个字符串。

String str = "Hello World!"
System.out.println("字符串的值为:" + str);
  1. 字符串常见类型

  1. charAt():按照指定下标,返回字符串中的一个字符

char c = str.charAt(8);
System.out.println("字符串:" +str + ",的下标为8的字符为:" +c);

//字符串:Hello World!,的下标为8的字符为:r
  1. length():返回字符串的长度(字符个数)

System.out.println("字符串:" +str + ",的字符个数为:" +str.length());

//字符串:Hello World!,的字符个数为:12

结合charAt()和length(),我们可以遍历一个字符串的每个字符(当数组用)

        for(int i = 0; i<str.length();i++){
            System.out.println("当前字符为:" + str.charAt(i));
        }

//当前字符为:H
//当前字符为:e
//当前字符为:l
//当前字符为:l
//当前字符为:o
//当前字符为: 
//当前字符为:W
//当前字符为:o
//当前字符为:r
//当前字符为:l
//当前字符为:d
//当前字符为:!
  1. compareTo():让当前字符串,和目标字符串进行比较。返回int型的数值:

返回小于0的负数:当前字符串比目标字符串小

返回0:当前字符串内容等于目标字符串

返回大于0的正数:当前字符串比目标字符串大

当前字符一旦不一样,就返回,所以这个例子只比较了A和H,当前字符串是括号里的

完全相等:字符长度一样,里面字符也完全一样

System.out.println("Hello World!和Aello World!的比较结果为:" + str.compareTo("Aello World!"));
//Hello World!和Aello World!的比较结果为:7
  1. concat():当前字符串拼接目标字符串,返回拼接后的新字符串

        String str1 = str.concat("你好,世界!");
        System.out.println("拼接后的字符串:str1 = " +str1);
        System.out.println("老字符串:str = " +str);
//拼接后的字符串:str1 = Hello World!你好,世界!
//老字符串:str = Hello World!//不会改变老字符串
  1. startsWith():判断字符串,是否以指定字符串开头:

System.out.println(str + "是否以“Hello”开头?" + str.startsWith("Hello"));
//Hello World!是否以“Hello”开头?true
  1. endsWith():判断字符串,是否以指定字符串结尾:

System.out.println(str + "是否以”World“结尾?" + str.endsWith("World"));
//Hello World!是否以”World“结尾?false
  1. equals():准确比较两个字符串是否相等(内容相等)

System.out.println(str + "是否与:“hello World!”相等:" + str.equals("Hello WOrld!"));
//Hello World!是否与:“hello World!”相等:false
  1. equalsIgnoreCase():忽略大小写,比较两个字符串是否相等(内容相等)

System.out.println(str + "是否与:“hello World!”相等:" + str.equalsIgnoreCase("Hello WOrld!"));
//Hello World!是否与:“hello World!”相等:true
  1. toUpperCase():转大写字母

        String x = "Hello WORLD!";
        System.out.println(x+"转大写字母为:" +x.toUpperCase());
//Hello WORLD!转大写字母为:HELLO WORLD!
  1. toLowerCase():转小写字母

System.out.println(x+"转小写字母为:" +x.toLowerCase());
//Hello WORLD!转大写字母为:hello world!
  1. contains():当前字符串,是否包含目标字符串

System.out.println(str + "是否包含:“llo”:" + str.contains("llo"));
//Hello World!是否包含:“llo”:true
  1. indexOf():当前字符串中,查找目标字符串第一次出现的位置(下标)

        System.out.println(str + "中,字母“W”第一次出现的位置为:" + str.indexOf('W'));
        System.out.println(str + "中,字母“llo”第一次出现的位置为:" + str.indexOf("llo"));
//Hello World!中,字母“W”第一次出现的位置为:6
//Hello World!中,字母“llo”第一次出现的位置为:2
  1. 判断一个字符串是否为“空”

        String str2 = null;//空引用,没有对象【压根没碗】
        if(str2 == null){
            System.out.println("str2是空字符串。");
        }

        str2 = " ";//有对象,但没内容【碗里没东西】
        if(str2.isEmpty()){
            System.out.println("str2是空字符串。");
        }
//str2是空字符串。
  1. replace():给当前字符串,替换指定查找字符串为目标字符串(返回新字符串,老字符串不变)

        str2 = str.replace("llo","ABCDEFG");
        System.out.println("替换前:str2 = " + str);
        System.out.println("替换后:str2 = " + str2);
//替换前:str2 = Hello World!
//替换后:str2 = HeABCDEFG World!
  1. split():把一个字符串,按照标记分割为多个子字符串,形成的数组

str2 = "aaa-bbb-ccc-123-xyz";
String[] strs = str2.split("-");
System.out.println(str2 + "按照“-”分割为:" + strs.length + "个字符串:");
for (int i = 0 ;i<strs.length ;i++){
    System.out.println(strs[i]);
}
//aaa-bbb-ccc-123-xyz按照“-”分割为:5个字符串:
//aaa
//bbb
//ccc
//123
//xyz
  1. toCharArray():把当前字符串,转换所有字符形成的char型数组

char[] chars = str.toCharArray();
for (int i =0; i< chars.length;i++){
    System.out.println(chars[i]);
}
  1. trim():用于去除字符串两端的空白字符,返回的是新字符串

str2 = "  你好,世界!  \t\n".trim();
System.out.println("去除两端空格后,str2 =“" +str2 +"”");
//去除两端空格后,str2 =“你好,世界!”
  1. substring():按照指定位置和结束位置,分割字符串(返回新字符串)

a.指定开始位置(含),到结尾整个截取一段子字符串

str2 = str.substring(3);
System.out.println("截取3位以后的字符串,str2=" + str2);
//截取3位以后的字符串,str2=lo World!

b.指定开始位置(含)和结束位置(不含),分割子字符串(返回新字符串)

str2 = str.substring(3,8);
System.out.println(str+"截取从[3,8)之间的字符串,str2=" + str2);
//Hello World!截取从[3,8)之间的字符串,str2=lo Wo
  1. toString():用于将对象的内容转换为字符串,对于String本身来讲,将自己返回

System.out.println("str.toString()为:" + str.toString());
str.toString()为:Hello World!
  1. 一般类、对象的toString()方法

object的默认toString:

public String toString() {
    return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
//学生对象的信息为:chapter7.Student@1b6d3586

二、时间操作

三、抽象类

四、接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值