(最全整理)String类的常用方法

一、获取

1、length()    获取字符串长度

String str = "ahcckmvevawe";
System.out.println(str.length());
//输出12

2、charAt(int index)    返回下标对应的字符

String str = "ahcckmvevawe";
System.out.println(str.charAt(4));
//输出k

3、indexOf()    返回字符对应的下标值(有重复字符返回第一个)

String str = "ahcckmvevawe";
System.out.println(str.indexOf('c'));
//输出2

4、subString()    截取字符串,形成新的字符串

String str = "ahc/ckm/vev//awe//";
System.out.println(str.substring(4));
//输出 ckm/vev//awe//String str = "ahc/ckm/vev//awe//";
System.out.println(str.substring(4,6));
//输出 ck

 二、常用功能

1、split()    字符串分割

/**默认limit=0,对结尾处的字符不进行分割**/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/")).collect(Collectors.toList()));
//输出 [ahc, ckm, vev, , awe]/**limit<0,对结尾处的字符分割**/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/",-1)).collect(Collectors.toList()));
//输出 [ahc, ckm, vev, , awe, , ]/**limit>0,指定分割成几组,不管后面的字符是什么(若不足,则取最大的组数)*/
String str = "ahc/ckm/vev//awe//";
System.out.println(Arrays.stream(str.split("/",3)).collect(Collectors.toList()));
//输出 [ahc, ckm, vev//awe//]

2、trim()    去除字符串两端空白

String str = "   ahcckmvevawe   ";
System.out.println(str.trim());
//输出 ahcckmvevawe

3、replace()    字符串替换

String str = "ahcckmvevawe";
System.out.println(str.replace("ah","xxxx"));
//输出 xxxxcckmvevawe

4、compareTo()     

  • 如果参数字符串等于此字符串,则返回值 0;
  • 如果此字符串小于字符串参数,则返回一个小于 0 的值;
  • 如果此字符串大于字符串参数,则返回一个大于 0 的值。
String str1 = "Strings";
String str2 = "Strings";
String str3 = "Strings123";int result1 = str1.compareTo( str2 );
System.out.println("result1="+result1);int result2 = str2.compareTo( str3 );
System.out.println("result2="+result2);int result3 = str3.compareTo( str1 );
System.out.println("result2="+result3);//输出 
result1=0
result2=-3
result3=3

5、isEmpty()    判断字符串是否为空

String str = "";
String str1 = "a";
System.out.println(str.isEmpty());//输出 true
System.out.println(str1.isEmpty());//输出 false

6、equals()    判断字符串内容是否相同(区分大小写)

String str1 = "abc";
String str2 = "ABC";
String str3 = "abc";
System.out.println(str1.equals(str2));//输出 false
System.out.println(str1.equals(str3));//输出 true

7、contains()    判断该字符串是否包含传递过来的字符串

String str1 = "ahcckmvevawe";
String str2 = "ahcck";
String str3 = "ah";
String str4 = "ahccm";
System.out.println(str1.contains(str2));//输出 true
System.out.println(str1.contains(str3));//输出 true
System.out.println(str1.contains(str4));//输出 false

8、startsWith()、endsWith()    判断字符串是否以传进来的字符串开头/结尾

String str1 = "  ccks";
String str2 = " ";
System.out.println(str1.startsWith(str2));//输出 true
System.out.println(str1.endsWith(str2));//输出 false

三、转换

1、toLowerCase()、toUpperCase()    将字符串转成大写字符/将字符串转为大写字符串

String str = "ahcckmvevawe";
System.out.println(str.toUpperCase(Locale.ROOT));//输出 AHCCKMVEVAWE
String str0 = "ahGCNSCEVAwe";
System.out.println(str0.toLowerCase(Locale.ROOT));//输出 ahgcnscevawe

2、toCharArray()    将String类型的字符串转化为char字符数组

String str = "abcde";
char[] arr = str.toCharArray();
System.out.println(arr[0]); //输出 a
System.out.println(arr[1]); //输出 b
System.out.println(arr[2]); //输出 c
System.out.println(arr[3]); //输出 d

3、comcat()    字符串拼接

String str1 = "abc";
String str2 = "def";
String str3 = str1.concat(str2);
System.out.println(str3);//输出 abcdef

4、valueOf()    基本数据类型都可以通过String.valueOf()方法转化为字符串表示形式

String str="1234";
System.out.println(str.valueOf(str)); //输出 1234char[] c = {'a','b','c','d'};
String str0 = new String();
str = str.valueOf(c);
System.out.println(str); //输出 abcd
// 返回boolean参数的字符串表示形式
String.valueOf(boolean b);
// 返回char参数的字符串表示形式
String.valueOf(char c);
// *返回char数组参数的字符串表示形式
String.valueOf(char[] data);
// 返回char数组特定子数组的字符串表示形式
String.valueOf(char[] data,int offset,int count);
// 返回double参数的字符串表示形式
String.valueOf(double d);
// 返回float参数的字符串表示形式
String.valueOf(float f);
// *返回int参数的字符串表示形式
String.valueOf(int i);
// 返回long参数的字符串表示形式
String.valueOf(long l);
// 返回Object参数的字符串表示形式
String.valueOf(Object obj);

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

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

相关文章

内测分发平台是否支持敏捷开发和持续集成?

大家好&#xff0c;我是咕噜-凯撒。敏捷开发和持续集成是软件开发中非常重要的流程和方法。内测分发平台作为应用开发和测试的关键环节需要具备这种能力。下面我简单的介绍一下敏捷开发和持续集成和提供的功能。图片来源&#xff1a;news.gulufenfa.com 敏捷开发是一种迭代、协…

Asp.net core WebApi 配置自定义swaggerUI和中文注释

1.创建asp.net core webApi项目 默认会引入swagger的Nuget包 <PackageReference Include"Swashbuckle.AspNetCore" Version"6.2.3" />2.配置基本信息和中文注释&#xff08;默认是没有中文注释的&#xff09; 2.1创建一个新的controller using Micr…

宕机对独立服务器会有啥影响?

宕机对独立服务器会有啥影响&#xff1f; 一个优秀的网站不仅仅需要好的内容以及架构&#xff0c;而且还需要有性能优质的服务器所支撑&#xff0c;这样才能保证网站正常的运作&#xff0c;然而&#xff0c;若是网站出现宕机的情况则会让独立服务器出现一些不可避免的影响&…

SELinux(一) 简介

首发公号&#xff1a;Rand_cs 前段时间的工作遇到了一些关于 SELinux 的问题&#xff0c;初次接触不熟悉此概念&#xff0c;导致当时配置策略时束手束脚&#xff0c;焦头烂额&#xff0c;为此去系统的学习了下 SELinux 的东西。聊 SELinux 之前&#xff0c;先来看看什么叫做访…

Linux以nohup方式运行jar包

1、在需要运行的jar包同级目录下建立启动脚本文件&#xff1a; 文件内容&#xff1a; #! /bin/bash #注意&#xff1a;必须有&让其后台执行&#xff0c;否则没有pid生成 jar包路径为绝对路径 nohup java -jar /usr/local/testDemo/jdkDemo-0.0.1-SNAPSHOT.jar >/us…

lc.96 不同的搜索二叉树 卡特兰数

lc.96 不同的搜索二叉树 题目描述正解 题目描述 来源&#xff1a;leetcode_hot100_96 给你一个整数 n &#xff0c;求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种&#xff1f;返回满足题意的二叉搜索树的种数。 正解 思路&#xff1a;卡特兰数 要算…

C51--4G模块

EC03-DNC&#xff1a;4G通信模块 EC03-DNC 功能特点&#xff1a; 采用最新4G CAT1方案&#xff1b; 支持数据透明传输; 支持TCP、UDP 网络协议; 支持心跳包、注册包功能最大支持64个字节数&#xff1b; 支持MQTT协议&#xff0c;支持接入OneNet平台、百度云平台、阿里云平台的…

微信小程序开发——项目开发入门

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 概述 本文重点介绍微信小程序开发者工具的下载与安装与项目开发入门。 下载开发者工具 请在官方网站下载微信小程序开发工具&#xff1b;图示如下&#xff1a; 请依据实际…

解决electron-builder打包不成功只能输出tgz文件的问题

现象&#xff1a; 对应项目里配的指令&#xff1a; 但就是死活不成功&#xff0c;只能输出tgz压缩文件。 最后一咬牙下载了官方的electron-quick-start拿来试试&#xff0c;结果还是一样。 一时间没想法了。 后来突然脑袋灵光一闪&#xff0c;去他妈的直接npx 执行看看&…

Java线程通信

线程通信 案例 package com.itheima.d4;public class ThreadTest {public static void main(String[] args) {Desk desk new Desk();//创建3个生产者线程new Thread(() -> {while (true) {desk.put();}}, "厨师1").start();new Thread(() -> {while (true) {…

华为设备使用python实现文件自动保存下载

实验目的&#xff1a; 公司有一台CE12800的设备&#xff0c;管理地址为172.16.1.2&#xff0c;现在需要编写自动化脚本&#xff0c;STELNET实现设备的自动保存配置文件&#xff0c;使用SFTP实现设备的文件下载。 实验拓扑&#xff1a; 实验步骤&#xff1a; 步骤1&#xff1…

Android flutter项目 启动优化实战(二)利用 App Startup 优化项目和使用flutterboost中的问题解决

背景 书接上回&#xff1a; Android flutter项目 启动优化实战&#xff08;一&#xff09;使用benchmark分析项目 已经分析出了问题: 1.缩短总时长&#xff08;解决黑屏问题、懒启动、优化流程&#xff09;、2.优化启动项&#xff08;使用App Startup&#xff09;、3.提升用…

鸿蒙开发学习——应用程序框架

文章目录 UIAbility的生命周期Create状态WindowStageCreateForeground和Background前后台展示控制onWindowStageDestroyDestory 总结 UIAbility的生命周期 感觉这里他讲的不清晰&#xff0c;UIAbility的4个声明周期是Create、Foreground&#xff08;桌面展示&#xff09;、Back…

PTA函数 7-1 近似求PI 本题要求编写程序,根据下式求π的近似值,直到最后一项小于给定精度eps

本题要求编写程序&#xff0c;根据下式求π的近似值&#xff0c;直到最后一项小于给定精度eps。 2π​131!​352!​3573!​⋯35⋯(2i1)i!​⋯ 泰勒公式 输入格式&#xff1a; 输入在一行中给出精度eps&#xff0c;可以使用以下语句来读输入&#xff1a; scanf("%le&qu…

Java实现通过经纬度求两个任意地点在球面上的距离

我们在实际开发中会获取对应的经纬度&#xff0c;可以使用ES大数据搜索引擎进行计算对应区域的数据&#xff0c;那我们在如何根据两个经纬度获取对应的球面距离&#xff0c;就是在地球上从一个地点到另一个地点的直线距离 工具类如下: public class GeoUtils {// 地球半径&am…

虚幻学习笔记3—UI跟随弹窗

一、前言 本文使用的虚幻引擎5.3.2&#xff0c;继点击场景3D物体的两种处理方式的基础完成对3D物体的点击触发后&#xff0c;我们需要制作一个可以弹窗显示该物体信息的UI面板&#xff0c;同时保证弹窗可以跟随物体。另外还讲了一种UI上的悬浮提示跟随弹窗。 二、实现 2.1、创…

【计算机毕业设计】nodejs+vue音乐播放器系统 微信小程序83g3s

本系统的设计与实现共包含12个表:分别是配置文件信息表&#xff0c;音乐列表评论表信息表&#xff0c;音乐论坛信息表&#xff0c;歌手介绍信息表&#xff0c;音乐资讯信息表&#xff0c;收藏表信息表&#xff0c;token表信息表&#xff0c;用户表信息表&#xff0c;音乐类型信…

Python与设计模式--观察者模式

23种计模式之 前言 &#xff08;5&#xff09;单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、&#xff08;11&#xff09;策略模式、责任链模式、命令模式、中介者模…

MySQL - 索引类型详解

通俗的来说&#xff0c;索引就相当于一个字典的目录&#xff0c;为了方便查找书中的内容&#xff0c;通过对内容建立索引形成目录&#xff0c;索引是一个文件&#xff0c;它是要占据物理内存的。 官方的来说索引它是一种数据结构&#xff0c;数据库索引是数据库管理系统中一个排…

viple模拟器使用(四):unity模拟器中实现沿右墙迷宫算法

沿右墙迷宫算法 引导 线控模拟可以使得通过用户手动操作&#xff0c;实现机器人在模拟环境下在迷宫中行走&#xff08;即&#xff1a;运动&#xff09;&#xff0c;算法可以使得机器人按照一定的策略自动行走&#xff0c;沿右墙迷宫算法就是其中的一种策略。 目的 运行程序后&…