String常用类:

1,字符串中的每一个元素都有自己的索引,其中最能忽视的是空格;

2,字符串在定义后就不能改变其长度,是一个常量,放在常量池中;

3,重新给字符串一个值,实质是其引用的地址发生改变,而不是像其他数据类型,赋值是覆盖;

4,字符串的拼接其实是将两个字符串放在一个新建的字符串当中;因此,如果需要频繁的改变字符串,就不要使用String,在创建字符串的时候需要时间和内存,在拼接字符串的时候又需要时间,十分的浪费资源;可以使用StringBuffer()和StringBuilder();

5,字符串的拼接:" "+" "---加号两边都是双引号的字符串,那么拼接是在编译前就进行的;所以"a","b"都是有自己独立的空间,但是"a"+"b"="ab";常量池中有"ab"就会直接引用;

并且只要+两边不是引号括起来的字符串,那么在进行拼接的时候都会创建String()对象;

6,创建字符串的方式:

第一种是:String str1="a";,这是在常量池中创建"a",再给str1引用;只是创建了一个对象;

第二种是:String str2=new String;str2="b";这是先new了一个String对象,再去常量池中查找"b",没找到之后再创建;创建完成之后再将其指向"b";这样就创建了两个对象;

7,创建字符串时,创建了几个对象的问题:

String str="a"+newString("b");

创建过程:在常量池中查找"a",没有找到,再在常量池中创建;

然后在堆内存中创建一个StringBuffer对象,

再在堆内存当中创建一个String对象str1;再在常量池中查找"b",没找到再创建一个"b",

再将"b"放在String的对象中,最后将"a"和String的对象放在StringBuffer中;

最后str引用StringBudffer;

在这个过程中一共创建了4个对象:"a",StringBffer,Str1,"b";

7,

String方法

lenth ():从"开始,空格也算;

trim(): 去除字符串首尾所有的空格;调用的时候是复制原来的字符串,不会对原来的字符串又影响;输入账号密码的时候;

toUppercase 大写;字母有用

toLowercase 小写;字母有用

isEmpyt() 判断字符是否为空,也就是判断字符串产长度是否为0;

getBytes(),将字符串按照默认编码方式转换为字节数组,并且转换为ASCII码,中文是三个;

toCharArray();将字符串转换为字符串数组;如果进行比较,比较对象是char类型;遍历字符串数组是可以使用增强for循环;

equalsignoreCase(String str):忽略大小写,比较和指定字符串是否相同;

equals()

charAt(index):返回指定索引位置的字符;

indexof(String):获取某个字符串第一次出现的位置;不存在的为-1;可以用来检验是否存在;;可以限制出现的次数不为1次;两个来联合使用;还可以获取字串的位置;

lastindexof(String):最后一次出现的位置;不存在的为-1;

contains(charsquence):验证是否存在指定字符系列;

concat(String):将指定的字符串拼接到字符串末尾;是创建一个两个字符串长度相加的新字符串,再逐一放进去;

startswith(String):检测是否以指定字符串开始

endswith(String):相反

substring(start):给其实位置到原来字符串末尾,得到字串,并保存;(写0无用);当两个参数时左闭右开区间;数组越界;

split():按照指定的正则表达式来分割,如果指定字符串不在末尾得到n+1个字串;如躲在末尾可以得到n个,开头分割的算;末尾的不算;是尾随的字符串不包括在里面;

replace(oldstring,newstring);将选中的的字符串转置换为指定的字符串;

String.valueof 转换类型;原始转字符

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值