java 数组和字符串操作

news2024/11/24 12:04:39

目录

  • 一、前言
  • 二、数组操作
    • 1.charAt操作
    • 2.getBytes操作
    • 3.toCharArray操作
    • 4.String.valueOf
    • 5.substring,toUpperCase,toLowerCase,concat
    • 6.indexOf
    • 7.Arrays使用

一、前言

本文章主要讲解数组的一些基本操作,让我们写代码更加方便,像我们在学c语言的时候常常会自己造轮子,好多方法都需要我们自己去写,但是java封装了很多方法给我们使用,让我们看看都有哪些方法吧。

二、数组操作

1.charAt操作

这个方法是根据下标取出字符串中的单个字符,这里不是字符数组。比如我定义了一个hello的字符串,我想取出它每一个字符,因为不是数组所以我们不能用数组取值的方法。
代码如下:

public class test {
    public static void main(String[] args) {
        String a = "helloWorld";
        for (int i = 0; i < a.length(); i++) {
            System.out.print(a.charAt(i)+" ");
        }
    }
}

输出:
在这里插入图片描述

2.getBytes操作

作用:字符串转换成字节数组,比如a就转换成了对应的ascii码97。
代码如下:

public class test {
    public static void main(String[] args) {
        String s1 = "abc";
        byte[] arr1 = s1.getBytes();
        for (int i = 0; i < arr1.length; i++) {
            System.out.print(arr1[i]+" ");
        }
    }
}

输出:
在这里插入图片描述

3.toCharArray操作

作用:将字符串转换成字符数组。
代码如下:

public class test {
    public static void main(String[] args) {
        String s2 = "hello world";
        char[] arr2 = s2.toCharArray();
        for (int i = 0; i < arr2.length; i++) {
            System.out.print(arr2[i]+" ");
        }
    }
}

输出:
在这里插入图片描述

4.String.valueOf

作用:把任意类型数据转换成字符串

public class test {
    public static void main(String[] args) {
        char[] arr3 = {'a','b','d'};
        String s3 = String.valueOf(arr3);
        System.out.println(s3);
    }
}

输出:
在这里插入图片描述

5.substring,toUpperCase,toLowerCase,concat

substring:截取字符串
toUpperCase:字母变大写
toLowerCase:字母变小写
concat:字符串连接

可以采用链式编程
示例:

public class test {
    public static void main(String[] args) {
        String s = "asdaFDJSLasdf";
        String s2 = s.substring(0,1).toUpperCase().concat(s.substring(1).toLowerCase());
        System.out.println(s2);
    }
}

输出:
在这里插入图片描述

6.indexOf

作用:返回子字符串在主字符串中第一次出现的索引
示例:查找小字符串在大字符串中出现的次数
代码:

public class test {
    public static void main(String[] args) {
        String s1 = "qweretetest,pipvobixcvtest,asdfjzchello";
        String s2 = "test";
        int count = 0;
        int index = 0;
        while ((index = s1.indexOf(s2)) != -1){
        	//截取出第一次出现后的所有字符串
            s1 = s1.substring(index+s2.length());
            System.out.println(s1);
            count++;
        }
        System.out.println(count);
    }
}

不懂的小伙伴可以自行Debug一下就知道程序怎么运行的了。
输出:
在这里插入图片描述

7.Arrays使用

toString:数组转字符串
sort:数组排序
binarySearch:二分查找,返回目标值的索引

示例:

public class Demo22_arrays {
    public static void main(String[] args){
        int[] arr = {33,11,55,66,22,44,88};
        System.out.println(Arrays.toString(arr)); //数组转字符串
        Arrays.sort(arr); //排序
        System.out.println(Arrays.toString(arr));
        int[] arr2 = {1,2,3,4,5};
        System.out.println(Arrays.binarySearch(arr2,2)); //查找字符串
    }
}

输出:
在这里插入图片描述

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

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

相关文章

1.docker-安装及使用

1.安装步骤 Install Docker Engine on CentOS 1. 确定CenOS7及以上版本 cat /etc/redhat-release2.卸载旧版本 yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine3.yum安…

软件测试岗位求职避坑,今年毁约应届生的公司有这么多?….

不知不觉九月已至&#xff0c;“金三银四”招聘旺季也落入尾声&#xff0c;大学生也迎来毕业季&#xff01; 这个时候&#xff0c;应届生开始集体走向社会&#xff0c;而职场人也迎来了跳槽涨薪的好时机。 可现实的求职情况却是一片困境&#xff1a;从中小微到“大厂”&#…

ICPC SWERC 2020 K - Unique Activities(SAM记录子串第一次出现的位置 or SAM + hash)

两种做法的效率差异 做法一&#xff1a;SAM记录子串第一次结束位置 做法二&#xff1a;SAM hash 题意&#xff1a; 给定一个字符串&#xff0c;让你找到只出现过一次&#xff0c;且长度最短的子串并输出&#xff0c;如果有多个则输出最先出现的那个。 思路&#xff1a…

迷宫问题-DFS-BFS

迷宫问题迷宫问题简介BFS解决迷宫最短路径问题DFS记录迷宫路径DFS解决迷宫所有路径问题迷宫问题简介 &#x1f680;学习过算法程序设计的应该都学习过迷宫这个问题&#xff0c;迷宫问题主要设计的算法就是DFS-深度优先遍历和BFS-广度优先遍历。 &#x1f680;在一个二维数组中…

Jmeter和Testlink自动化测试框架研究与实施

摘 要 目前基于Jmeter的接口自动化测试框架&#xff0c;大多只实现脚本维护和自动调度&#xff0c;无法与Testlink进行互通&#xff0c;实现测试方案与自动化实施流程连接&#xff0c;本文基于Testlink、Jmeter、Jenkins实现&#xff1a;通过Testlink统一维护接口自动化测试用…

搭建es集群

单点es的缺点&#xff1a;1.存储数据有限&#xff1b;2.单点故障问题&#xff08;es出现故障则整个服务会直接宕机&#xff09; 解决存储数据有限&#xff1a;搭建多台es服务器实现集群 解决单点故障&#xff1a;在不同的es服务器中进行备份数据&#xff08;例&#xff1a;在…

车载测试需要有哪些知识需要学习的?

一、车载行业前景 其中的车载测试也随着国家对新能源、智能驾驶等领域的支持&#xff0c;而异常活跃&#xff0c;目前我国共有9000家自动驾驶相关企业&#xff0c;而今年从华为、中兴、大唐等通信领域的企业到以阿里、腾讯、小米等为代表的互联网企业&#xff0c;均已布局自动…

浅谈继承和发扬传统文化路径

中华民族五千年文明历史,造就了博大精深的中华传统文化。如何继承和发扬传统文化,是当代文化爱好者和工作者所关注的&#xff0c;实现这一使命,文化传承需要在以下路径上发力: 1. “微更新”路径。在传承的基础上进行融合拓展,实现内涵丰富和更新。 2. “强保护”路径。利用立…

空压机远程监控系统解决方案

一、项目背景 随着物联网各种技术快速发展,各物联网远程监测应用场景也应用而生&#xff0c;空压机是一种空气压缩和气体输送设备&#xff0c;广泛运用于矿山、机械、电子、医疗等各行业。空压机常规都是需要人在现场监测和维护,现在通过物联网技术,远程监控成为可能&#xff…

利用Msray-plus提升SEO工作效率和效果

随着互联网的不断发展和普及&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;已经成为了网站推广和营销的重要手段之一。SEO的核心是通过优化网站的结构、内容和关键词等&#xff0c;提高网站在搜索引擎中的排名&#xff0c;从而吸引更多的访问量和潜在客户。然而&#xf…

多通道振弦传感器无线采集采集仪如何开始使用

多通道振弦传感器无线采集采集仪如何开始使用 开始使用 设备电源 VS208~432 可使用内置电池&#xff08;默认&#xff09;也可使用外部电池工作。 需要特别注意&#xff1a;严禁内置和外部电池&#xff08;电源&#xff09;同时使用&#xff0c;严重时会造成短路起火&#xff0…

宝塔搭建chevereto图床

前言 chevereto是一个国外开发的图床&#xff0c;使用phpnginxmysql搭建的&#xff0c;使用宝塔面板更方便搭建chevereto图床&#xff0c;chevereto有收费和免费版本 准备环境 宝塔面板&#xff0c;百度网上很多教程&#xff0c;一键安装.chevereto安装包&#xff0c;本次使…

Cadence Allegro PCB设计88问解析(二十七) 之 Allegro中dimension environment命令使用(添加及删除尺寸标注)

一个学习信号完整性仿真的layout工程师 在通常的设计中&#xff0c;一般会在outline的光绘层中添加单板或则拼版外形的尺寸大小。方便板厂人员查看&#xff0c;但是尺寸标注的添加涉及到尺寸单位、精度等&#xff0c;要根据公司的标准添加。如果需要修改尺寸的参数&#xff0c;…

nssctf web 入门(7)

这里通过nssctf的题单web安全入门来写&#xff0c;会按照题单详细解释每题。题单在NSSCTF中。 想入门ctfweb的可以看这个系列&#xff0c;之后会一直出这个题单的解析&#xff0c;题目一共有28题&#xff0c;打算写10篇。 [SWPUCTF 2021 新生赛]hardrce [SWPUCTF 2021 新生赛…

【快乐手撕LeetCode题解系列】——环形链表

【【快乐手撕LeetCode题解系列】——移除链表元素&#x1f60e;前言&#x1f64c;环形链表&#x1f64c;画图分析&#xff1a;&#x1f60d;思路分析&#xff1a;&#x1f60d;源代码分享&#xff1a;&#x1f60d;总结撒花&#x1f49e;&#x1f60e;博客昵称&#xff1a;博客…

python简单认识一下字面量并尝试编写输出字面量在控制台

首先 还是顾名思义 什么是字面量&#xff1f; 在代码中写下来的固定的值 我们称之为 字面量 python的字面量主要是以下几种 当然 前期不需要那么急 我们先熟悉 数字类型中的 整数 浮点数 和字符串类型 然后后续再慢慢扩展即可 整数呢 就相当于 我们数学中的 正整数 例如 1 10…

Compose (10/N) - 动画

一、高级别动画 1.1 简单值动画 animate***AsState 为单个值添加动画。只需要指定目标值&#xff0c;会从当前值向目标值渐变。 animateColorAsStateanimateDpAsStateanimateSizeAsStateanimateOffsetAsStateanimateRectAsState animateIntAsState animateIntOffsetAsState an…

【机会约束、鲁棒优化】机会约束和鲁棒优化研究优化【ccDCOPF】研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

【数据挖掘与商务智能决策】第十章 支持向量机

1. 线性可分SVM import numpy as np import pandas as pd import matplotlib.pyplot as plt%matplotlib inline1.1 生成模拟数据 # 导入sklearn模拟二分类数据生成模块 from sklearn.datasets import make_blobs # 生成模拟二分类数据集 X, y make_blobs(n_samples150, n_f…

SIP协议之RTP负载类型(payload type)

一、RTP负载类型介绍​ 在SIP 音视频通话中&#xff0c;媒体数据是由RTP包携带的&#xff0c; RTP包中的PT字段标识了负载媒体数据的类型。如下图&#xff1a; 注&#xff1a; PT表示负载类型(Payload Type), 7 bits&#xff0c;即所传输的多媒体的类型 ​  不同的媒体编码…