java字符串遍历的几种常用方法总结
作者:humor2020 发布时间:2022-08-19 06:36:41
1、介绍
常见的数据结构和数据类型,如字符串,树,哈希表,栈,队列等,我们经常在做题的时候会遇到遍历他们的情况,所以掌握好这些方法才能在遇到题目的时候打开思路解决问题,掌握好招式才能正式的解决问题,才能有独立完成问题的可能性。
那么我们这篇文章先学习一下字符串的遍历,在力扣热门100题——无重复字符的最大子串一题中,最容易想到的暴力循环方法就需要用到字符串的遍历。
2、具体的遍历方法
2.1 使用 charAt()
length():返回此字符序列的长度。
charAt(int index):返回指定索引处的char值。
那么我们就可以通过for循环遍历字符串从0到length-1的每一个字符。
String str="2022 fight";
for(int i=0;i < str.length();i++) {
System.out.println(str.charAt(i));
}
2.2 使用substring(i ,i+1)
CharSequence subSequence( int beginIndex, int endIndex):返回一个字符序列,该序列是该序列的子序列。
所以就可以通过把beginIndex设定为i,而endIndex设定为i+1,这样每次也是获得一个字符。
String str="2022 fight";
for(int i=0;i < str.length();i++) {
System.out.println(str.substring(i,i+1));
}
2.3 使用toCharArray()
toCharArray():将此字符串转换为字符数组。
这样就可以将字符串先转换成字符数组,然后再用for循环遍历数组即可。
String str="2022 fight";
char[] s = str.toCharArray();
for(int i=0;i < str.length();i++) {
System.out.println(s[i]);
}
2.4 使用getBytes()
getBytes():将String编码为一系列字节序列,然后存储到字节数组中。
当需要遍历字节类型的时候可以用这个方式,这个相对不那么常用。
String str="2022 fight";
byte[] b = str.getBytes();
for(int i=0;i < str.length();i++) {
System.out.println(b[i]);
}
3、总结
因为字符串是非常常用的数据类型,必须掌握,很多操作的对象就是字符串。
通过这几个方法可以看到,其实掌握各种数据类型之间的转换是非常重要的,String类有很多的相关方法。
对于for循环的遍历和数组的遍历也要掌握,在遍历的时候注意数组的上下界。
大家可以只记住其中一种就好,一力破十会,charAt()和toCharArray都是很好理解的方法。
来源:https://blog.csdn.net/humor2020/article/details/123898983


猜你喜欢
- 方法一:public class MainActivity extends Activity { @O
- static void Main(string[] args) &nb
- 本文实例讲述了C#图像处理之木刻效果实现方法。分享给大家供大家参考。具体如下://木刻效果public Bitmap PFilterMuKe
- 本文实例讲述了Android开发实现webview中img标签加载本地图片的方法。分享给大家供大家参考,具体如下:在网上查了很多教程,感觉很
- 当前单元格指的是DataGridView焦点所在的单元格,它可以通过DataGridView对象的CurrentCell属性取得。如果当前单
- 基本概念servlet 关系servlet 和 servletconfig 是一对一的关系;servletconfig 作用它存储 web.
- 前言无论是顶部还是底部导航栏,都是大多数APP的标配,网络上的相关实现教程也非常之多。最近回忆起以前写的小项目,发现对这块内容有些遗忘,不妨
- 《Android开发艺术探索》笔记:在Activity的onCreate()或者onResume()中去获得View的高度的时候不能正确获得
- 首先,你可能会见到如下提示:File encoding is disabled because .properties file (see
- SpringCloudStream配置以下配置摘自《SpringCloud微服务实战》,配置主要包括两大部分:Stream配置(基础配置、通
- 一、应用场景之前做商城应用时,会有对用户资料的设置情况进行限制,如下:(1)用户邮箱,应当只允许输入英文字母,数字和@.两个符号,(2)用户
- 先来看看,今天要实现的自定义控件效果图:关于ViewDragHelper的使用,大家可以先看这篇文章ViewDragHelper的使用介绍实
- 概述中国特色社会主义乱码问题是我们经常会碰到的问题,解决的办法有很多,本文分别介绍了GET方式和POST方式中文乱码解决方案中一劳永逸的办法
- springboot 异常与重定向在spring中,有两个重定向类型:301,永久性跳转302,暂时性跳转默认调用302。1.下面先通过一个
- Java main 方法面试题的详细整理1.不用main方法如何定义一个类?不行,没有main方法我们不能运行Java类。在java 7之前
- FilterInputStream 介绍FilterInputStream 的作用是用来“封装其它的输入流,并为它们提供额外的功能”。它的常
- Map接口存储特点以键(key)值(value)对的形式存储键无序、无下标、元素不可重复值无序、无下标、元素可以重复常用实现类HashMap
- 一、Statementimport java.sql.*;public class TestJDBC { public stati
- 本文实例为大家分享了java * 实现在线人数统计的具体代码,供大家参考,具体内容如下1.在工程中创建监听类SessionListener
- 一.小伙伴们在做钱包支付中,相信会有个绕不过去的输入支付密码页面。下面小编给个效果图:898342572738938468.png实现的原理