String常用接口API

在开发过程中,经常需要操作字符串,在这里总结出经常用到的String接口,也方便我日后查看

一、获取字符、位置

例子:String str=“abc_def”

1、 获取字符串的长度,字符串中包含的字符数
      方法:int length()
      调用:str.length()

2、 根据位置获取位置上某个字符
      方法:char charAt(int index)
      调用:str.charAt(2) //获取到的字符是"c"

3、根据字符获取该字符在字符串中位置

      a)返回的是str在字符串中第一次出现的位置

int indexOf(String str)

       b)从fromIndex指定位置开始,获取str在字符串中出现的位置

int indexOf(String str, int fromIndex)

      c)从后向前扫描查找

int lastIndexOf(String str)

二、判断

1、 字符串中是否包含某一个子串

boolean contains("XXX")

2、字符中是否为空

boolean isEmpty()//判断长度是否为0

3、字符串是否是以指定内容开头

boolean startsWith("XXX");

4、字符串是否是以指定内容结尾

boolean endsWith("XXX");

5、 判断字符串内容是否相同,重写了equals方法

boolean equals("XXX");

6、判断内容是否相同,并忽略大小写

boolean equalsIgnoreCase();

三、转换

1、将字符串转成字符数组

char[] toCharArray()

2、将基本数据类型转成字符串

static String valueOf(int)
static String valueOf(double)

3、 将字符串转成大写或则小写

String toUpperCase();//全部转成大写
String toLowerCase();//全部转为小写

四、替换、分割

替换,第一个参数是被替换的字符

String replace(oldchar,newchar);

根据某个字符,把字符串分割成字符串数组

String[] split("X");

五、截取、去除空格

截取字符串

String substring(begin);
String substring(begin,end);//含头不含尾

将字符串两端的多个空格去除

String trim();

六、String和其他类型互转

1、StringBuffer转String

  StringBuffer sb=new StringBuffer("hello world");
  String str=sb.toString();

2、String转JSONObject

//如:str="{\"time\": 1597649129406,\"name\": \"张三\"}";
JSONObject jsonObject =JSONObject.parseObject(str);//String转JSONObject,
String name=jsonObject.getString("name");//name等于张三

3、String转JSONObject,嵌套

//{"code":0,"data":{"expiresIn":7200000,"surplusCount":89,"accessToken":"dVpBeklKOU93TFdQamlVNW4zUThoQT09"}}
JSONObject jsonObject =JSONObject.parseObject(s).getJSONObject("data");//String转JSONObject,
String Token=jsonObject.getString("accessToken");

4、String转Integer

//String转Integer,back是String类型
Integer id=Integer.valueOf(back);

5、Object转JSONObject

JSONObject json=(JSONObject) JSONObject.toJSON(list.get(0));

6、JSONArray转List<对象>

//perArray是JSONArray类型的变量,
List<String> perlist = perArray.toJavaList(String.class);
//或者
List<User> userlist = userArray.toJavaList(User.class);

7、JSONObject转实体类

JSONObject json = jo.getJSONObject("flowInfo");
FlowInfo flowInfo = JSON.toJavaObject(json,FlowInfo.class);

8、Object转对象

ObjectMapper objectMapper = new ObjectMapper();
User user=objectMapper.convertValue(object, User.class);

9、String转JSONArray

//例子:"data": "[{\"appname\":\"测试 \",\"bfmid\":\"1916454\",\"remark\":\"\"}]"
String data=change.getData();
JSONArray dataJSON=JSONObject.parseArray(data);
for(int i=0;i<dataJSON.size();i++ ){
	JSONObject js=(JSONObject) JSONObject.toJSON(dataJSON.get(i));
	String bfmid=js.getString("bfmid");
}

10、字符串拼接

//例子:
String[] qualificationIdStr=qualificationId.split(",");
//用StringBuilder 类型进行字符串拼接
StringBuilder qualificationName=new StringBuilder();
for(String str:qualificationIdStr){
    switch (str){
        case "1":        
            qualificationName.append("张三");
            break;
        case "2":
            qualificationName.append("李四");
            break;
    }
}
qualificationName.toString();//最后StringBuilder 转为String类型

欢迎大家阅读,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感谢

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值