java自动化测试-03-05java基础之字符串

news2024/11/17 5:49:35

1、字符串的定义

String是变量类型,表示字符串类型

name是给这个变量起的名字,这个是可以随意取的,只要不是java的关键字就可以了

=表示赋值,=右边的的内容表示 变量值,对字符串变量进行 赋值,需要用双引号括起来;

在这里插入图片描述

2、字符串格式化

1)、打印语句的使用,使用printf可以引用多个变量,在字符串中可以使用%s表示字符串变量,%d表示数字变量,%f表示浮点变量

printf打印不能换行

在这里插入图片描述

2)、使用字符串拼接,使用+拼接

如:

String  name="晨+燕";
String countryName="中国";
System.out.println(name+"来自于"+countryName);

3、字符串常用方法

1)获取字符串长度

name1.length()

name1为字符串变量的名字,length是获取该字符串的长度,返回的类型为int类型

代码:

String  name1="晨+燕";
int strLen=name1.length();
System.out.println(strLen);

在这里插入图片描述

2)去除字符串前后空格

name2.trim()

name2为字符串变量的名字,trim表示去除字符串前后空格后返回一个新的字符串,返回类型是字符串

String  name1="晨+燕";
String  name2=" 晨+燕 ";
int strLen=name1.length();
System.out.println(name1);
System.out.println(strLen);
System.out.println(name2);
System.out.println(name2.length());
System.out.println(name2.trim());
System.out.println(name2.trim().length());

在这里插入图片描述

3)字符串截取 s.substring(4,8)

s.substring(4,8)

其中s表示字符串的名字是s,substring方法表示截取字符串,括号里该方法的参数,4表示从第4个索引开始,8表示到8个索引不包括8索引,可以记为左含右不含,

注:字符串的索引第一个位置为0,依次类推,所以

 String s="ABCDEFGHIJKL";
 //目标截取其中的EFGH    
 String newStr=s.substring(4,8);
 System.out.println(newStr);

在这里插入图片描述

4)字符串截取 s.substring(4)

其中s表示字符串的名字是s,substring方法表示截取字符串,括号里该方法的参数,4表示从第4个索引开始,一直截取到最后一个索引位置

 String s="ABCDEFGHIJKL";
 //        目标截取 EFGHIJKL       
 String newStr=s.substring(4);        
 System.out.println(newStr);

在这里插入图片描述

5)字符串替换 str1.replace(“wangfang”,“liyue”)

其中str1表示字符串的名字,replace()方法表示替换其中的字符串,括号里该方法的参数,表示将str1这个字符中的wangfang这个字符串替换为liyue,返回 一个新的字符串

String str1="wangfang 来自中国,她是最好的中国医生";
//将str1中的wangfang用liyue来替换,返回的是一个新的字符串,而不是修改字符串中的值  
System.out.println(str1.replace("wangfang","liyue"));    
System.out.println(str1);

在这里插入图片描述

6)字符串是否包含某些字符串 str1.contains(“中国”)

其中str1表示字符串的名字,contains()方法表示是否包含某个字符串,括号里该方法的参数,str1中是否包含中国,返回boolean类型,返回true表示包含,返回false表示不包含

String str1="wangfang 来自中国,她是最好的中国医生";
System.out.println(str1.contains("中国"));

在这里插入图片描述

7)字符串大小写转换

str1.toLowerCase(),表示把str1中的字母转换为小写字母

str1.toUpperCase(),表示把str1中的字母转换为大写字母

String str1="wangfang 来自中国,她是最好的中国生";
System.out.println(str1.toLowerCase());
System.out.println(str1.toUpperCase());

在这里插入图片描述

8)、字符串比较 str1.equals(str2)

表示str1与str2是否相同

String str1="zhaomei";
String str2="zhaomei";
String str3="zhaomeimei";
System.out.println(str1.equals(str2));
System.out.println(str1.equals(str3));

在这里插入图片描述

9)、字符串比较,忽略大小写对比

String str1="zhaomei";
String str2="Zhaomei";
System.out.println(str1.equals(str2));
System.out.println(str1.equalsIgnoreCase(str2));

在这里插入图片描述

10)、字符串分割,str1.split(“、”),表示用、将str1分割返回字符串数组

String str1="初、中、高、特高";
String[] strE=str1.split("、");
System.out.println(strE.length);
for(int i=0;i<strE.length;i++)
{    System.out.println(strE[i]);
}

在这里插入图片描述

4、String、StringBuffer、StringBuilder区别

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。

和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不 产生新的未使用对象。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1567967.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++模板实参推断

模板实参推断 我们已经看到&#xff0c;对于函数模板&#xff0c;编译器利用调用中的函数实参来确定其模板参数。 从函数实参来确定模板实参的过程被称为模板实参推断。 也就是说&#xff0c;只有函数参数才配有模板实参推断&#xff0c;函数返回类型是不配有的 在模板实参…

每日面经分享(python part1)

Python中的深拷贝和浅拷贝的区别是什么&#xff1f; a. 浅拷贝创建一个新的对象&#xff0c;但其中的可变元素仍然共享引用。只有对象的第一层被复制&#xff0c;而更深层次的嵌套对象仍然是引用。更改其中一个对象的属性会影响到其他对象。 b. 深拷贝创建一个完全独立的新对象…

营销中的归因人工智能

Attribution AI in marketing 归因人工智能作为智能服务的一部分&#xff0c;是一种多渠道算法归因服务&#xff0c;根据特定结果计算客户互动的影响和增量影响。有了归因人工智能&#xff0c;营销人员可以通过了解每个客户互动对客户旅程每个阶段的影响来衡量和优化营销和广告…

MT3017 上色

思路&#xff1a;使用分治&#xff0c;在每个连续区域递归调用heng()和shu() #include <bits/stdc.h> using namespace std; int n, m; int h[5005];int shu(int l, int r) {return r - l 1; } int heng(int l, int r) {int hmin 0x3f3f3f3f;for (int i l; i < r;…

银行数字化转型导师坚鹏:银行数字化转型给总行带来的9大价值

银行数字化转型给总行带来的9大价值 银行数字化转型对总行的深远影响是多方面的&#xff0c;银行数字化转型导师坚鹏从以下9个方面进行详细分析&#xff0c;相信能够给您带来重要价值。 1. 客户价值 银行数字化转型可以利用大数据、智能化风控模型为客户设计、提供“千人千面…

多模态系列-综述Video Understanding with Large Language Models: A Survey

本文是LLM系列文章,针对《Video Understanding with Large Language Models: A Survey》的翻译。 论文链接:https://arxiv.org/pdf/2312.17432v2.pdf 代码链接:https://github.com/yunlong10/Awesome-LLMs-for-Video-Understanding 大型语言模型下的视频理解研究综述 摘要…

Python学习笔记-Flask接收post请求数据并存储数据库

1.引包 from flask import Flask, request, jsonify from flask_sqlalchemy import SQLAlchemy 2.配置连接,替换为自己的MySQL 数据库的实际用户名、密码和数据库名 app Flask(__name__) #创建应用实列 app.config[SQLALCHEMY_DATABASE_URI] mysqlpymysql://ro…

Linux笔记之制作基于ubuntu20.4的最小OpenGL C++开发docker镜像

Linux笔记之制作基于ubuntu20.4的最小OpenGL C开发docker镜像 —— 2024-04-03 夜 code review! 文章目录 Linux笔记之制作基于ubuntu20.4的最小OpenGL C开发docker镜像1.这里把这本书的例程代码放在了Dockerfile所在的文件夹内以使镜像预装例程代码2.创建Dockerfile3.构建Do…

c++前言

目录 1. 什么是 C 2. C 发展史 3. C 的重要性 4. 如何学习 C 5. 关于本门课程 1. 什么是C C语言是结构化和模块化的语言&#xff0c;适合处理较小规模的程序。对于复杂的问题&#xff0c;规模较大的 程序&#xff0c;需要高度的抽象和建模时&#xff0c; C 语言则不合适…

ShardingJdbc+Mybatis实现多数据源

Mybatis多数据源 这个是对shardingjdbc应用的一个升级&#xff0c;如果对于shardingjdbc的整合还没看过之前的文章的&#xff0c;可以先看看文章https://blog.csdn.net/Think_and_work/article/details/137174049?spm1001.2014.3001.5501 整合步骤 1、依赖 和全新项目的单…

【异常错误】 Expected to have finished reduction in the prior iteration before star、find_unused_parameters

运行代码时出现了错误&#xff1a; RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. This error indicates that your module has parameters that were not used in producing loss. You can enable unused parameter …

VSCODE使用VSIX安装扩展

VSCode安装扩展特别慢&#xff0c;使用命令行安装告别龟速&#xff1a; code --install-extension当然&#xff0c;我这个是在WSL 的linux上安装的&#xff0c;Windows一样的。 VSCode扩展商店网页链接&#xff1a;https://marketplace.visualstudio.com/vscode

Ceph分布式存储系统以及高可用原理

Ceph分布式存储系统以及高可用原理 1. Ceph原理和架构1.1 分布式存储系统抽象1.2 Ceph基本组件 2 Ceph中的策略层2.1 CRUSH进行数据分发和定位2.2 PG(Placement Group): 集群管理的基本单元2.3 PG的代理primary OSD2.4 轻量级的集群元数据ClusterMap2.5 对PG的罗辑分组&#xf…

面试总结------2024/04/04

1.面试官提问&#xff1a;你说你在项目中使用springsecurity jwt 实现了登录功能&#xff0c;能简单讲一下怎么实现的吗&#xff1f; 2.使用RabbitMQ实现订单超时取消功能 订单状态定义 首先&#xff0c;我们需要定义订单的不同状态。在这个示例中&#xff0c;我们可以定义以下…

分享three.js实现乐高小汽车

前言 Web脚本语言JavaScript入门容易&#xff0c;但是想要熟练掌握却需要几年的学习与实践&#xff0c;还要在弱类型开发语言中习惯于使用模块来构建你的代码&#xff0c;就像小时候玩的乐高积木一样。 应用程序的模块化理念&#xff0c;通过将实现隐藏在一个简单的接口后面&a…

shell的编写

文章目录 1.框架2.命令行3.获取用户命令字符串4.命令行字符串分割5.执行命令和内建命令6.完整代码&#xff1a; 1.框架 我们知道shell是一直存在的&#xff0c;所以首先我们第一步就是要搭建一个框架&#xff0c;使其一直存在。 那么也很简单&#xff0c;一个while循环就可以完…

(科研实践篇)大模型相关知识

1.embedding 1.介绍&#xff1a; embedding就是用一个低纬的向量表示一个物品。而这个embedding向量的实质就是使距离相似的向量所对应的物品具有相似的含义&#xff08;参考皮尔逊算法和cos余弦式子&#xff1a;计算相似度&#xff09;简单来说&#xff0c;就是用空间去表示…

1.Docker简介和安装

1 Docker 简介 1.1 Docker 是什么&#xff1f; docker是一个开源的应用容器引擎。 1.2 容器是什么&#xff1f; 容器是一种轻量级的虚拟化技术 &#xff0c;它是一个由应用运行环境、容器基础镜像组成的集合。 以 Web 服务 Nginx 为例&#xff0c;如下图所示&#xff1a;Ngin…

【并发编程】CountDownLatch

&#x1f4dd;个人主页&#xff1a;五敷有你 &#x1f525;系列专栏&#xff1a;并发编程 ⛺️稳中求进&#xff0c;晒太阳 CountDownLatch 概念 CountDownLatch可以使一个获多个线程等待其他线程各自执行完毕后再执行。 CountDownLatch 定义了一个计数器&#xff0c;…

贝锐蒲公英企业路由器双机热备,保障异地组网可靠、不中断

对于关键业务&#xff0c;比如&#xff1a;在线支付系统、远程医疗监控系统、重要数据中心等&#xff0c;一旦网络发生故障&#xff0c;可能导致巨大的损失或影响&#xff0c;因此需确保网络拥有极高的可靠性、稳定性和容错能力。 面对此类场景和需求&#xff0c;贝锐蒲公英异…