Java的常见api以及异常情况-2

news2024/10/6 10:37:26

目录

1、equals方法源码解读

2、replace替换方法

3、split分割方法

4、indexOf方法

5、常见的api

1、equals方法源码解读

public class API_test04 {
    public static void main(String[] args) {
        String str1 = "rx";
        String str2 = "rx";
        System.out.println(str1.equals(str2));
        //equals方法是比较属性值的!相同返回true 不同返回false

    }
}

    equals方法的源码:
    
    public boolean equals(Object anObject) {
        if (this == anObject) {
            return true;
        }
        if (anObject instanceof String) {
            String anotherString = (String)anObject;
            int n = value.length;
            if (n == anotherString.value.length) {
                char v1[] = value;
                char v2[] = anotherString.value;
                int i = 0;
                while (n-- != 0) {
                    if (v1[i] != v2[i])
                        return false;
                    i++;
                }
                return true;
            }
        }
        return false;
    }


2、replace替换方法

public class API_replace {
    public static void main(String[] args) {
        String str = "qwerty123";
        //将字符串中的123替换成abc
        /**
         * java中提供了特定的api
         * replace
         */
        String abc = str.replace("123","abc");
        System.out.println(abc);//qwertyabc
    }
}

replace参数1 需要整换的字符串内容123
替换后的内答qwertyabc
replaceFirst 替换第一个
replace 替换所有
replaceALL 替换所有


3、split分割方法

public class API_split {
    public static void main(String[] args) {
        //通过 | 分割 字符串 最终返回 数组类型

        String str = "aa|bb|cc|dd";
        String[] arr = str.split("\\|");
        //使用" \\ " 符号进行转义

        System.out.println(arr[0]);
        System.out.println(arr[1]);
        System.out.println(arr[2]);
        System.out.println(arr[3]);
     }
}


split方法用于将字符串按照给定的字符进行分隔,得到一个字符串数组。以下是split方法的几种常见用法和总结:

1. 使用split(String x)可以将字符串以字符x为分隔符进行拆分,并返回一个字符串数组。

2. 使用split(String x, int n)可以将字符串以字符x为分隔符进行拆分,并限定返回的字符串数组大小为n。

3. 特殊字符作为分隔符时,需要使用\\进行转义,例如split("\\(")可以将字符串以"("进行分隔。

4. 若要逐个分隔字符串,可以使用split(""),其中为空字符串。

5. 同时使用多个分隔符进行分隔时,可以将要分隔的字符作为字符数组传入split方法。

6. 当需要以多个连续空格分隔字符串时,可以使用split(" {1,}"),"{1,}"表示至少一个空格。

总结:
split方法是用于拆分字符串的方法,可以按照指定字符进行分隔,并返回一个字符串数组。它可以根据不同需求选择分隔符,包括普通字符、特殊字符和正则表达式。
同时,也支持逐个分隔和多个连续空格分隔的情况。通过灵活使用split方法,可以方便地处理字符串的拆分操作。


4、indexOf方法

indexOf方法是Java中用于查找字符串中某个子字符串第一次出现的位置的方法。

1. indexOf(String str):在字符串中查找子字符串str第一次出现的位置。如果找到了该子字符串,返回从起始位置开始的索引值;如果没有找到,返回-1。

2. indexOf(String str, int fromIndex):在字符串中从指定位置fromIndex开始查找子字符串str第一次出现的位置。如果找到了该子字符串,返回从起始位置开始的索引值;如果没有找到,返回-1。

3. indexOf(char ch):在字符串中查找指定字符ch第一次出现的位置。如果找到了该字符,返回从起始位置开始的索引值;如果没有找到,返回-1。

4. 注意,indexOf方法是区分大小写的。如果需要进行大小写不敏感的查找,可以使用toLowerCase()方法将字符串转换成小写后再进行查找。

总结:
indexOf方法是用于查找字符串中某个子字符串或字符第一次出现的位置的方法。它可以在整个字符串中进行查找,也可以从指定位置开始查找。使用indexOf方法可以方便地获得字符串中子字符串的位置,从而进行后续操作。需要注意的是,indexOf方法是区分大小写的,如果需要进行大小写不敏感的查找,可以使用其他方法进行转换。

public class API_indexof {
    public static void main(String[] args) {
        String str = "Aa61";
        System.out.println(str.indexOf(65));
        System.out.println(str.indexOf(97));
    }
}

A在ASCII中是65,a在ASCII中是97  所以返回下标 0 1

5、常见的api


要学会使用Java api 查询表!

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

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

相关文章

模态、模式和真实发生

模态和模式均是用来描述某一对象或系统可能出现的特性、状态或行为,它们既包括逻辑上的抽象可能性,也涵盖现实中具体的现象和事件结构。模态更多地关联于逻辑可能性和必然性,而模式则侧重于现象的重复性和规律性,两者都可以反映真…

【Java程序设计】【C00269】基于Springboot的漫画网站(有论文)

基于Springboot的漫画网站(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的漫画网站 本系统分为系统功能模块、管理员功能模块、以及用户功能模块。 系统功能模块:在系统首页可以查看首页、漫画投稿、…

websocket具体实践

websocket具体实践 参考: 如何使用websocket WebSocket客户端连接不上和掉线的问题以及解决方案 继6月份对websocket一顿了解之后,我们的项目也要上websocket了,虽然这部分不是我做,但是借此机会,我也想要尝试一下&am…

[C/C++] -- CMake使用

CMake(Cross-platform Make)是一个开源的跨平台构建工具,用于自动生成用于不同操作系统和编译器的构建脚本。它可以简化项目的构建过程,使得开发人员能够更方便地管理代码、依赖项和构建设置。 CMake 使用一个名为 CMakeLists.tx…

【Java程序设计】【C00266】基于Springboot的超市进存销管理系统(有论文)

【Java程序设计】【C00266】基于Springboot的超市进存销管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的超市进销存系统 本系统分为登录注册模块、管理员功能模块以及员工功能模块。 登录注册模块&#…

Solidworks:平面工程图练习

把草图变成工程图,遇到第一个问题是线宽需要用鼠标选中后再设置线宽和颜色。我觉得应该有一个自动设置现款的功能,不知道有没有,我找了半天也没找到。 另一个问题是,作业代号字体上下颠倒了,不知道这是啥意思。 第三个…

鸿蒙开发理论之页面和自定义组件生命周期

1、自定义组件和页面的关系 页面:即应用的UI页面。可以由一个或者多个自定义组件组成,Entry装饰的自定义组件为页面的入口组件,即页面的根节点,一个页面有且仅能有一个Entry。只有被Entry装饰的组件才可以调用页面的生命周期。自…

从零开始学howtoheap:理解fastbins的​unsorted bin攻击

how2heap是由shellphish团队制作的堆利用教程,介绍了多种堆利用技术,后续系列实验我们就通过这个教程来学习。环境可参见从零开始配置pwn环境:从零开始配置pwn环境:从零开始配置pwn环境:优化pwn虚拟机配置支持libc等指…

开源版发卡小程序源码,云盘发卡微信小程序源码带PC端

一款发卡小程序。带PC端 系统微信小程序前端采用nuiapp 后端采用think PHP6 PC前端采用vue开发 使用HBuilderX工具打开,运行到微信小程序工具,系统会自动打包微信小程序代码 修改文件common/request/request.js 改成你的后端网址 微信小程序端完全…

【原创 附源码】Flutter安卓及iOS海外登录--Google登录最详细流程

最近接触了几个海外登录的平台,踩了很多坑,也总结了很多东西,决定记录下来给路过的兄弟坐个参考,也留着以后留着回顾。更新时间为2024年2月8日,后续集成方式可能会有变动,所以目前的集成流程仅供参考&#…

vscode预览github上的markdown效果

需要安装的插件 Github Markdown Preview Markdown Checkboxes Markdown Emoji Markdown footnotes Markdown Preview Github Styling Markdown Preview Mermaid Support Markdown yaml Preamble 操作步骤 ①ctrlshiftv会弹出预览页面 ②点击Split Up ③把这个拖过去…

Linux第49步_移植ST公司的linux内核第1步_获取linux源码

已知ST公司的linux源码路径: /home/zgq/linux/atk-mp1/stm32mp1-openstlinux-5.4-dunfell-mp1-20-06-24/sources/arm-ostl-linux-gnueabi/linux-stm32mp-5.4.31-r0 1、创建“my_linux”目录 打开第1个终端 输入“ls回车” 输入“cd linux/回车”,切换…

svg基础(九)滤镜-feMorphology(形态学)

feMorphology:形态学滤镜 用来侵蚀或扩张输入的图像。它在增肥或瘦身效果方面特别有用。适合用来创建轮廓和边界。 1 用法 <feMorphology operator"" radius""/>2 属性 inoperator -dilate膨胀,erode侵蚀radius- 3 示例 <svg width"50…

【易学】周易入门 ③ ( 玄学五术 - 山医命相卜 | 天命无常 唯有德者居之 | 预测学模型 | 五行学说 | 五行相生 | 五行相克 )

文章目录 一、玄学五术 - 山医命相卜二、天命无常 唯有德者居之三、预测学模型四、五行学说1、五行相生2、五行相克 一、玄学五术 - 山医命相卜 玄学五术 : 山 : 修行 " 肉体 " 和 " 精神 " , 以寻求 身心超脱 ; 肉体修行 - 拳法 : 太极拳 , 五禽戏 , 易筋…

Git分支和迭代流程

Git分支 feature分支&#xff1a;功能分支 dev分支&#xff1a;开发分支 test分支&#xff1a;测试分支 master分支&#xff1a;生产环境分支 hotfix分支&#xff1a;bug修复分支。从master拉取&#xff0c;修复并测试完成merge回master和dev。 某些团队可能还会有 reale…

【技巧】Allegro实用技巧之模块复用

需求分析&#xff1a;使用Allegro软件进行PCB Layout设计时&#xff0c;当电路图中有很多路相同的模块&#xff0c;使用模块复用的的操作方法&#xff0c;可以显著提高工作效率&#xff0c;同时也可以使PCB布局在整体上显得美观。下面来讲述这个方法。 具体方法及说明&#xf…

linux优化空间完全卸载mysql——centos7.9

文章目录 ⭐前言⭐linux命令使用&#x1f496; 基础命令&#x1f496; 内存优化&#x1f496; 完全删除mysql ⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享 linux优化空间&完全卸载mysql——centos7.9。 linux内存分配 在Linux中&#xff0c;内存分配是…

AcWing 802. 区间和 离散化

文章目录 题目链接题目描述解题思路代码实现总结 题目链接 链接: AcWing 802. 区间和 题目描述 解题思路 离散化是一种常用的技巧&#xff0c;它能够将原始的连续数值转换为一组离散的值&#xff0c;从而简化问题的处理。在这段代码中&#xff0c;离散化的过程主要分为三个步…

分布式文件系统 SpringBoot+FastDFS+Vue.js

分布式文件系统 SpringBootFastDFSVue.js 一、分布式文件系统1.1.文件系统1.2.什么是分布式文件系统1.3.分布式文件系统的出现1.3.主流的分布式文件系统1.4.分布式文件服务提供商1.4.1.阿里OSS1.4.2.七牛云存储1.4.3.百度云存储 二、fastDFS2.1.fastDSF介绍2.2.为什么要使用fas…

2024年最新指南:如何订阅Midjourney(详尽步骤解析)

前言&#xff1a; Midjourney是一个基于人工智能的图像生成工具&#xff0c;它使用高级算法来创建独特和复杂的图像。这个工具能够根据用户输入的文字描述生成对应的图片。Midjourney的特点在于它能够处理非常抽象或者具体的描述&#xff0c;生成高质量、富有创意的视觉内容。M…