当前位置: 首页 > news >正文

php网站生成静态页面做淘宝联盟网站要多少钱?

php网站生成静态页面,做淘宝联盟网站要多少钱?,甘肃建设厅网站好了吗,广州景点文章目录 1.基本介绍1.1创建对象1.2找到对应下标的字符1.3找到对应字符的下标1.4指定位置开始遍历1.5反向进行遍历1.6大小写之间的转换1.7字符串转换为数组1.8元素的替换1.9字符串的分割1.10字符串的截取 2.StringBuilder和StringBuffer2.1 StringBuilder的引入2.2面试题目 1.基…

文章目录

  • 1.基本介绍
    • 1.1创建对象
    • 1.2找到对应下标的字符
    • 1.3找到对应字符的下标
    • 1.4指定位置开始遍历
    • 1.5反向进行遍历
    • 1.6大小写之间的转换
    • 1.7字符串转换为数组
    • 1.8元素的替换
    • 1.9字符串的分割
    • 1.10字符串的截取
  • 2.StringBuilder和StringBuffer
    • 2.1 StringBuilder的引入
    • 2.2面试题目

1.基本介绍

C语言里面的字符串以\0结尾,java里面没有斜杠0结尾这个说法,C语言里面只能使用字符数组和指针;

1.1创建对象

下面展示的这个就是创建String对象的三个方式:

  • 直接把这个字符串传递过去,下面的就是“abcdef字符串直接传递过去;
  • 因为这个String也是一个类,因此我们就可以直接把这个new的对象传递过去;
  • 第三个方式就是传递我们的字符数组,也是可以帮助我们创建对象,这个其实就是把上面的第二个方式分步操作,显示定义字符数组,然后是把这个字符数组作为参数进行传递,第二个就是直接把这个数组作为参数进行传递;
  • equalsIgnoreCase这个方法是进行字符串之间的比较,但是会忽略大小写;

image-20241011215150305

1.2找到对应下标的字符

下面的这个就是charAt方法,这个方法的作用就是我们把这个下标传递过去,这个时候我们的返回值就是从左向右进行寻找对应下标的元素字符,然后打印输出;

image-20241011215449916

1.3找到对应字符的下标

我们也可以根据这个字符打印输出这个字符的下标,使用的就是我们的indexOf方法进行输出的;

image-20241011215550633

1.4指定位置开始遍历

如果我们想要把这个开始查找的位置进行修改,这个方法里面我们可以进行这个参数的添加,上面的是只给出来一个字符,这个就是从0下标开始查找,但是如果我们给出两个参数:第一个参数是我们开始查找的下标,第二个是查找的字符,这个时候就会从我们指定的下标开始查找;

image-20241011215630287

1.5反向进行遍历

上面的查找是进行的正向的遍历,我们可以使用这个lastIndexOf方法进行反向的便遍历,这个也可以给一个参数,可以给多个参数;

image-20241011215859497

1.6大小写之间的转换

下面的就是两个大小写字母混合组成的一个字符串,这个里面的toUpperCase就是把我们的这个已知的字符串转换为一个全部大写的字符串;

toLowerCase就是把这个已知的字符串转换为全部小写的字符串,但是需要注意的是,我们的这个转换是新创建一个一样的对象,在这个对象的基础上面进行修改,我们的这个修改都不会影响原来的字符串;

image-20241012112811040

1.7字符串转换为数组

为什么要把这个字符串转换为数组,因为转换为数组之后,我们可以使用下标对于这个里面的元素进行遍历和管理,我们可以随时随地的取出来这个数组里面的任意位置的元素;

下面还写了一个format方法,这个方法就是让这个内容以指定的格式打印出来,就是对于我们的这个打印格式进行设置的一个方法;

image-20241012133059195

1.8元素的替换

元素的替换是使用的这个replace关键字,我们的这个replace支持重载方法,下面展示的就是四种重载的方式,第一个表示把a全部替换为k字符,第二个表示把ab字符组合全部替换为klp字符组合,第三个就是把这个里面的第一个ab组合替换为klp,第四个就是把这个里面的所有的ab字符组合替换为klp字符组合这个其实和第二个没有什么区别,酌情进行选择即可;

image-20241012133339093

1.9字符串的分割

这个使用的是我们的split方法,我们的这个参数表示的就是从=位置开始分割,分割成为两个部分,我们分割之后的组成一个数组,我们使用数组进行接收,然后可以使用循环,打印出来分割之后的每一个部分的内容;

下面的这个是点号进行分割,我们的参数需要加上两个斜杠,这个主要是涉及到正则表达式,感兴趣同学课下了解即可;

image-20241012133401655

1.10字符串的截取

截取就是我们从这个字符串里面分割出来我们想要的部分,下面的两种重载的方式,第一个就是使用一个参数的substring,这个表示的就是我们的这个字符串从第三个位置开始截取,没有第二个参数就是默认到最后一个元素才会停止,如果有第二个参数,表示把这个区间里面的字符串进行截取;

image-20241012133435586

2.StringBuilder和StringBuffer

2.1 StringBuilder的引入

因为String的不可变性,为了我们更好的对于这个字符串进行修改,因此这个地方我们提供了StringBuilder和StringBuffer类;

我们下面展示的就是日常我们创建一个字符串,然后使用+进行字符串的拼接,因此这个时候两个部分就拼接到了一起,但是实际上这个是创建了一个对象,把我们的hello追加到这个里面,然后使用append再把这个world再次追加到这个字符串的后面;

因为两次追加之后我们的这个结果仍然是一个StringBuilder,因此这个时候我们使用这个toString方法,把这个对象转换为string类型的,然后打印输出,这个才是+真正发生的过程,而不是像我们的直接拼接那么简单;

image-20241012180023412

在下面的这个append的底层源码里面,我们可以看到这个添加之后就是返回的this,因此可以说明这个就是在原来的这个字符串的基础上进行修改的,然后返回的就是我们修改之后的字符串,这个进一步验证我们的stringBuilder就是可以修改的这个特性;

image-20241012180934578

2.2面试题目

String,StringBuilder,StringBuffer的区别:

  1. String的内容不可以进行修改,StringBuilder,StringBuffer的内容可以进行修改;
  2. StringBuilder,StringBuffer的大部分的功能都是相似的;
  3. StringBuilder采用同步处理,属于线程安全操作,StringBuffer没有采用同步处理,属于不安全操作;
  4. StringBuilder多在单线程的情况下使用,StringBuffer多在多线程的情况下使用

下面的这个同样是一个面试的题目,考察我们对于这个引用的理解,这个里面主要就是画出堆栈图,但是这个题目很容易错误,如果对于这个引用理解的不透彻的话;

public class Example{String str = new String("good");char[ ] ch = { 'a' , 'b' , 'c' };public static void main(String args[]){Example ex = new Example();ex.change(ex.str,ex.ch);System.out.print(ex.str + " and ");System.out.print(ex.ch);}public void change(String str,char ch[ ]){str = "test ok";ch[0] = 'g';}
}

画图分析:从这个图里面我们可以看到原来的指向,以及这个传参之后的指向,我们的str1形参只是引用,这个时候change里面就是让这个形参执行了新的空间罢了,并没有低于这个内容进行修改,这个ch数组才是正经的对于这个引用里面的内容进行了修改,但是我们打印这个ex.str的时候指向的还是我们的原来的good这个内容;

image-20241012190943563

接下来我们还是在这个IDEA里面演示一下两个情形:下面的这个就是为了说明问题,我们的func1方法对于这个传递过来的参数,也是指向了新的空间,并没有修改,而这个func2里面才是修改这个引用指向的内容;

image-20241012191017177

通过这个题目,希望大家可以理解,同样是引用,但是我们的用法不同,结果也是不同的,我们可以让这个引用指向新的空间内容,也可以让这个引用指向的内容进行修改,需要注意甄别~~

[外链图片转存中…(img-JBBf27JB-1728731569799)]

通过这个题目,希望大家可以理解,同样是引用,但是我们的用法不同,结果也是不同的,我们可以让这个引用指向新的空间内容,也可以让这个引用指向的内容进行修改,需要注意甄别~~

http://www.yayakq.cn/news/237399/

相关文章:

  • 河北住房和城乡建设厅网站首页框架网站建设
  • 什么叫网络架构绍兴关键词优化报价
  • 网站开发的安全策略dede网站怎么做微信小程序
  • 营销型网站建设的要素九江做网站哪家公司好
  • 免费网站建设支持ftp自己制作一个网站
  • 网站空间ftp连接失败免费兼职一单一结
  • 网站301是什么意思成都注册公司多少钱
  • 网站建设和管理什么意思手机如何安装wordpress
  • 网站建设试题以及答案个人app定制
  • 网站维护界面线上视频剪辑培训班
  • 做的网站需要买什么服务器wordpress微视频主题
  • 做网站用什么工具好关键词挖掘长尾词工具
  • 泰安网站建设 九微米如何制作app图标
  • 网站开发公司 杭州网络营销推广岗位有哪些
  • 海口房产网站建设外贸网站建设注意
  • 铜川做网站的公司网站是asp还是php
  • 网站系统建设费用天眼查公司注册查询官网
  • 建站网站案例免费不收费用网站
  • 农产品品牌策划方案杭州网站优化多少钱
  • 网站免费做软件有哪些网站建设报价方案下载
  • 宁波网站建设制作多少钱杭州网站建设方案推广
  • 制作百度移动网站模板商业网站开发实训心得体会范文
  • 房地产网站加盟爱站网站排名查询工具
  • 什么网站时候做伪静态震旦网站谁做的
  • 做招聘网站还有法盈利吗js开发手机app
  • 织梦网站产品普宁网站建设公司
  • phpcms律师网站模板陕西响应式网站建设
  • 老网站怎么做循环链接花瓣是模仿哪个网站
  • 大良营销网站建设新闻wordpress页面结构
  • 付银行的网站建设费的会计科目山西建设银行招聘网站