Java基础--StringAPI

macOS安装Cplex+yalmip 阅读详情

一 创建字符串

在Java语言中将字符串作为对象来管理,因此可以向创建其他类对象一样来创建字符串。

 

创建字符串

  1. 用一个数组创建String对象: String(char a[]);

例如: char a [] = {‘g’,’o’,’o’,’d’};

       String  str = new String(a);

等价于 String str = new String(“good”);

  1. 提取字符数组中一部分来创建String对象:String (char a[], int offset, int length),其中offset代表提取数组的开始位置,length代表生成的字符串的长度。

例如: char a[] = {‘s’,’t’,’u’,’d’,’e’,’n’,’t’};

       String str = new String(a,2,4);

等价于 String str = new String(“uden”);

  1. 通过字符串常量的引用赋值给字符串一个变量;

例如: String str = “12131”;

 

二 StringAPI操作

// 定义一个字符串变量;
        String  str = "DADSqewqe123fdss";
        
      /*
       * StringAPI说明
       */
        
     /*
      *  1. length(),获取字符串长度;且注意:此方法返回的长度包括字符串中的空格;
      */
        int length = str.length();
        System.out.println("str字符串的长度是"+length);
        // 输出结果: str字符串的长度是16
        
     /*
      *  2. indexOf(String s),该方法用于参数字符串s,在指定的字符串首次出现的位置;当调用该方法时,
      *     会从当前字符串开始位置进行搜索,找到,返回下标,否则,返回-1.
      */
        int index = str.indexOf("q");
        System.out.println("字符串q首次出现的位置是:"+index);
        // 输出结果:字符串q首次出现的位置是:4
        
     /*
      * 3. lastIndexOf(String s),该方法用于参数字符串s,在指定的字符串最后一次出现的位置;当调用该方法时,
      *    会从当前字符串开始位置进行搜索,找到,返回下标,否则,返回-1.
      */
        int lastIndex = str.indexOf("e");
        System.out.println("字符串e最后一次出现的位置是:"+lastIndex);
        // 输出结果:字符串e最后一次出现的位置是:5
        
     /*
      *  4. charAt(int index), 该方法用于返回当前字符串指定索引的字符。
      */
        char c = str.charAt(3);
        System.out.println("当前字符串索引为3时对应的字符是:"+c);
        // 输出结果:当前字符串索引为3时对应的字符是:S
        
     /*
      *  5.substring(int beginIndex),该方法表示从指定索引位置开始,直到截取到字符串结尾的子字符串。
      *    beginIndex 表示指定开始的索引位置。
      */
        String bstr = str.substring(6);
        System.out.println("截取的字符串是"+bstr);
        // 输出结果:截取的字符串是wqe123fdss
        
     /*
      * 6.substring(int beginIndex,int endIndex),该方法表示从指定索引位置开始,直到截取到指定索引位置结束的子字符串。
      *   beginIndex 表示开始索引,endIndex 表示截至索引。
      */
        String bestr = str.substring(7, 13);
        System.out.println("截取的字符串是"+bestr);
        // 输出结果:截取的字符串是qe123f
        
    /*
     *   7. trim(),该方法用于去除字符串中的前导空格和尾部空格;
     */
        String str1 = " dsewerwewe ";
        String str2 = str1.trim();
        System.out.println("去除空格前的字符串长度是"+str1.length());
        System.out.println("去除空格后的字符串长度是"+str2.length());
        // 输出结果:去除空格前的字符串长度是12   
        //        去除空格后的字符串长度是10
        
    /*
     *  8. replace(char oldChar,char newChar); 该方法用于替换当前字符串中的字符或字符串。 oldChar 表示旧的字符或字符串 ;
     *     newChar 表示新的字符或字符串;该方法返回新的字符串,但当oldChar在原有字符串中不存在时,则返回原字符串。
     */  
        String newStr = str.replace('e', 'c');
        System.out.println("替换前的字符串是:"+str);
        System.out.println("替换后的字符串是:"+newStr);
    //    输出结果:替换前的字符串是:DADSqewqe123fdss
    //                       替换后的字符串是:DADSqcwqc123fdss
        
    /*
     * 9. startsWith()和endsWith(); 分别用于判断字符串是否以指定内容开始或结束,返回boolean;
     */
        boolean b = str.startsWith("DA");
        boolean b1 = str.endsWith("jj");
        System.out.println("字符串str是否以DA开始的"+b);
        System.out.println("字符串str是否以jj结束的"+b1);
    //  输出结果:字符串str是否以DA开始的true
    //         字符串str是否以jj结束的false
        
    /*
     * 10. 判断两个字符串是否相等;
     *     注意:判断两个字符串是否相等,不能用比较运算符  ==, 因为比较运算符比较的是两个字符串的地址是否相同,即使两个字符串的内容相同,但存储的内存地址不同,同样会返回false;
     *     判断两个字符串是否相等,要使用equals()和equalsIgnoreCase();他们之间的区别是:
     *     区别:  equals在比较时是区分大小写的,而equalsIgnoreCase()在比较时是忽略大小写的。
     *     
     */
        String eq1str = "ASDfg";
        String eq2str = "ASDfg";
        String eq3str = "asdFG";
        boolean eqb1 = eq1str.equals(eq2str);
        boolean eqb2 = eq1str.equals(eq3str);
        boolean eqb3 = eq1str.equalsIgnoreCase(eq2str);
        boolean eqb4 = eq1str.equalsIgnoreCase(eq3str);
        System.out.println("使用equals方法判断字符串eq1str与字符串eq2str是否相等"+eqb1);
        System.out.println("使用equals方法判断字符串eq1str与字符串eq3str是否相等"+eqb2);
        System.out.println("---------------------------------");
        System.out.println("使用equalsIgnoreCase方法判断字符串eq1str与字符串eq2str是否相等"+eqb3);
        System.out.println("使用equalsIgnoreCase方法判断字符串eq1str与字符串eq3str是否相等"+eqb4);
        /*
         * 输出结果:
         * 使用equals方法判断字符串eq1str与字符串eq2str是否相等true
                使用equals方法判断字符串eq1str与字符串eq3str是否相等false
           ---------------------------------
                              使用equalsIgnoreCase方法判断字符串eq1str与字符串eq2str是否相等true
                              使用equalsIgnoreCase方法判断字符串eq1str与字符串eq3str是否相等true
         */
        
        
    /*
     * 11. cpmpareTo(); 该方法用于按照字典顺序比较两个字符串,该比较基于字符串中每个字符的unicode值,按照字典顺序将此S听对象表示的字符序列
     *     与参数字符串所表示的字符序列进行比较。如果按字典顺序此String对象位于参数字符串之前,则比较结果为一个负整数,如果按字典顺序此String对
     *     象位于参数字符串之后,则返回一个正整数,如果两个字符串相等,则返回0.
     *     注意: compareTo()只有在equals方法返回true时,才返回0.
     */
        String  c1str = "acd";
        String  c2str = "bca";
        String  c3str = "abc";
        String  c4str = "acb";
        System.out.println("c1str compareTo c2str 返回"+c1str.compareTo(c2str));
        System.out.println("c1str compareTo c3str 返回"+c1str.compareTo(c3str));
        System.out.println("c1str compareTo c4str 返回"+c1str.compareTo(c4str));
        /*
         * 输出结果:
         * c1str compareTo c2str 返回-1
           c1str compareTo c3str 返回1
           c1str compareTo c4str 返回2
                              根据返回结果可以看出,该方法是从左到右依次进行比较的。
         */
        
    /*
     *  12.字母大小写转换
     *     toLowerCase();将字符串中所有大写字符转换成小写
     *     toUpperCase();将字符串中所有小写字符转换成大写
     *     注意:使用toLowerCase(),toUpperCase()转换时,数字与非字符不受影响。
     */
        String toStr = "abc DEF";
        String to1Str = toStr.toLowerCase();
        String to2Str = toStr.toUpperCase();
        System.out.println("字符串toStr调用toLowerCase()转换后得"+to1Str);
        System.out.println("字符串toStr调用toUpperCase()转换后得"+to2Str);
        /*
         * 输出结果:
         * 字符串toStr调用toLowerCase()转换后得abc def
                 字符串toStr调用toUpperCase()转换后得ABC DEF
         */
        
        
        /*
         * 13.split();该方法用于对字符串按指定分割字符或分割字符串进行分割,并将分割后的结果存放到字符串数组中。
         *    字符串分割有两种分割方式:
         *    1.split(String sign); 根据给定的分割符进行分割,sign是给定的分割符,也可以是正则表达式。
         *      注意:没有统一的对字符串分割的分割符,如果想定义多个分割符,可以使用符号"|",例如: ",|=",表示分割符分别是","和"=".
         *    2.split(String sign,int limit); 根据给定的分割符对字符串进行拆分,并限定拆分的次数。
         *      sign 指定的分割符,   limit 要拆分的次数。
         */
        String ip = "192.168.0.1";
        String ip1s[] = ip.split("\\.");
        String ip2s[] = ip.split("\\.", 2);
        System.out.println("ip 的原值为 : ["+ip+"]");
        System.out.print("全部拆分的结果为:");
        for (String s : ip1s) {
            System.out.print("["+s+"]");
        }
        System.out.println();
        System.out.print("拆分两次的结果为:");
        for (String s : ip2s) {
            System.out.print("["+s+"]");
        }
        /*
         * 输出结果:ip 的原值为 : [192.168.0.1]
                    全部拆分的结果为:[192][168][0][1]
                     拆分两次的结果为:[192][168.0.1]
         */
        
        
        /*
         * 14. contains(),该方法用于判断一个字符串中是否包含另一个字符串
         */
        String s = "DAD";
        boolean bc = str.contains(s);
        System.out.println("字符串str中是否包含字符串s:"+bc);
        // 输出结果:
        
        
        /*
         * 15.getBytes();该方法用于将字符串转换成字节数组;
         */
           byte[] strs = str.getBytes();
           for (byte d : strs) {
            System.out.print(d+",");
        }
        System.out.println();
        // 输出结果:68,65,68,83,113,101,119,113,101,49,50,51,102,100,115,115,
        
           /*
             * 16.toCharArray;该方法用于将字符串转换成字节数组;
             */
               char[] chars = str.toCharArray();
              for (char cr : chars) {
                System.out.print(cr+",");
            }
            // 输出结果:D,A,D,S,q,e,w,q,e,1,2,3,f,d,s,s,
        
        /*
         * 17 . isEmpty();判断字符串是否为空;
         */

核心组件大换血:Backbone与Neck魔改篇:YOLO26魔改Neck:引入BiFPN(双向特征金字塔),多尺度融合能力飙升 本文深入解析了YOLO26目标检测模型中Neck部分的优化策略,重点探讨了BiFPN(双向特征金字塔网络)的原理与实现。文章首先指出YOLO26原生FPN+PAN结构在多尺度特征融合上的局限性,特别是在小目标检测和边缘部署场景中的性能瓶颈。随后系统梳理了Neck网络的演进历程,从FPN、PANet到BiFPN和ASFF,详细对比了各架构的特点。核心部分展示了如何将BiFPN引入YOLO26,包括可学习权重融合、双向跨尺度连接等关键技术实现,并提供了PyTorch代码示例。本文为需要提升小目标检测性能或优化边 阅读详情

相关推荐

用Docker-Compose三节点部署生产级Doris集群:从配置文件到故障转移

本文详细介绍了如何使用Docker-Compose部署一个生产级的三节点Apache Doris集群。内容涵盖从核心架构理解、配置文件编写到集群初始化验证的全过程,并重点讲解了如何实现高可用、数据持久化、健康检查以及故障转移等生产级运维关键点,为中小团队提供了一种在容器化便利性与系统稳定性间取得平衡的可靠部署方案。

kkk56的博客 856

java基础-小孩子都能看的懂stringAPI

低调就是高贵的奢华。

知识追寻者(Inheriting the spirit of open source, Spreading technology knowledge;) 6627

MATLAB配置MinGW编译器的完整指南

本文提供了在Windows系统上为MATLAB配置MinGW编译器的完整指南。详细介绍了通过MATLAB附加功能管理器在线安装和手动离线安装两种核心方法,并重点说明了如何解决常见的“未找到支持的编译器”等错误。指南包含从版本检查、环境变量配置到最终使用mex命令验证的每一步,帮助用户顺利完成MATLAB与MinGW的集成,以支持C/C++代码编译。

weixin_29031057的博客 265

string java api_java基础-stringAPI

一 前言这篇文章是针对初学者学习字符串使用的文章,在之前的基础系列文章中有使用过字符串,但是没有详细的讲解如何使用,这篇文章将会大方面将解String的API操作;二 构造方法String 的构造方法比较多,知识追寻者会挑选几个重点构造方法进行说明;String是不可变的字符串,每次使用StringAPI 都会生成新的字符串对象;想要详细了解底层内容,知识追寻者会在文末给出链接,初学者跳过;2.1...

weixin_39527879的博客 99

从零搭建openEuler ARM64开发测试环境:手把手教你用libvirt+KVM配置虚拟机(含VNC远程安装)

本文详细介绍了如何在ARM64平台上从零搭建openEuler开发测试环境,涵盖libvirt和KVM配置虚拟机的完整流程,包括环境准备、存储配置、网络优化、XML配置详解以及VNC远程安装。特别针对华为欧拉(openEuler)系统进行了优化,帮助开发者快速构建高效的ARM架构虚拟化环境。

weixin_30545945的博客 586

Monocle2在R 4.3环境下的终极避坑指南:从安装到可视化全流程解析

本文提供了在R 4.3环境下安装和运行Monocle2的完整解决方案,重点解决了依赖包兼容性、源码修改及BEAM分析报错等关键问题。文章详细解析了从环境准备、依赖包处理、源码安装验证到从Seurat对象转换、拟时轨迹构建、高级可视化及性能优化的全流程,旨在帮助用户顺利完成单细胞拟时分析。

weixin_29206669的博客 1355

【JAVA基础】字符串大小写转换不利用StringAPI.

public class UpStr { static String str = "AbcDeFdDSfgdsadeADFSAFCfdsa"; public String transformUpperOrLower(String str, String type) { //将字符串转换为char数组 char[] ch = str.

如切如磋,如琢如磨,臻于至善。 1872

同济土木非0基础三个月跨考复旦计算机攻略

跨考cs攻略前言我cs专业课如何复习How to start from zero简历其他复试 前言 建议多去工地/化工厂涡轮增压一下 我 同济土木gpa 3.2/5 挂科 * n 辣鸡项目 * n (padding 简历) 21考复旦计算机专硕 10月-12月 学习+复习 总分392 政治 68;背肖4即可 英语二 78 裸考,(高考英语140+);做点真题,建议据自己情况准备 数学二 142 ;(高考数学接近满分);做真题+模拟题,每天写一张试卷 专业课 104 ,考试生病了,下文展开。 cs专业课

piglake的博客 7238

java中字符转换的API,【Java基础】之字符串大小写转换不利用StringAPI.

public class UpStr{static String str = "AbcDeFdDSfgdsadeADFSAFCfdsa";public String transformUpperOrLower(String str, String type){//将字符串转换为char数组char[] ch = str.toCharArray();if (type == null || type....

weixin_39664136的博客 312

OpenClaw赚钱实录:从“养龙虾“到可持续变现的实践指南——原生“龙虾”OpenClaw快速部署、问题速查与避坑指南

至此,你已经完成了从选购服务器到配置AI大脑的全过程。无论是想在云上养一只7x24小时的“龙虾”,还是在本地体验AI Agent的魅力,上述指南都提供了明确的路径。下一步,就是接入飞书、钉钉或QQ,让你的OpenClaw真正开始“干活”赚钱了 [citation:6]。

冯·诺依曼 990

【WRF安装】完整自动化 WRF-ARW/WRF-Chem 安装脚本(多服务器测试)

【WRF安装】完整自动化 WRF-ARW/WRF-Chem 安装脚本(多服务器测试)

WW、forever的博客 285

Java核心技术卷1 开发基础 第3章 Java的基本程序设计结构 3.6 字符串

Java核心技术卷1 开发基础 第3章 Java的基本程序设计结构 3.6 字符串

代码改变世界 205

PD3.0详解 协议的时序timer和counter计数

前面介绍了关于PD协议的交互,还有协议层数据各个字段的含义,但是一直没有系统的说关于协议的时序,还有部分counter,就是协议允许发送的次数,或者一些其他计数。 大师匈今天说一下关于这方面的东西,这些东西都是非常关键的东西,但是相对来说PD标准内对时序的要求还是比较宽泛,非常容易能够实现这样的要求。 Timer 1、CRCReceiveTimer 0.9~1.1ms 表示每次通信收到goodcrc的时间,必须在这个时间内收到goodcrc, 我们要注意不是在0.9~1.1ms内,而是第三方可以在这个范

大师匈的博客 5007

Java基础(三):八种基本数据类型

对于每一种数据都定义了明确的具体数据类型(强类型语言),在内存中分配了不同大小的内存空间。记录着世界上所有字符对应的一个数字。使用时要加上强制转换符:()了解:Unicode 编码。了解:ASCII 码。

从基础到源码解析的学习记录 1540

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

StringAPI

substring()—substring(startIndex,endIndex)左开右闭,检索字符。toCharArray()将字符串转化为字符数组----array。java文件中采用Unicode编码,1汉字占2B,1字母占1B;equals()方法判断参数是否相等,返回Boolean值;concat()尾部添加字符,字符串拼接(类似于+拼接)indexOf()检索字符,有则返回其下标,无则-1;getBytes()字符串字节长度----int。length() 字符串长度----int。

m0_61086522的博客 516

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Java核心技术——第一章:基本程序设计结构

java基础知识总汇,java核心技术

weixin_43472800的博客 300

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

stringAPI总结

String常用APi总结

weixin_44482951的博客 136

Java常用StringAPI

String类定义的变量可以用于存储字符串,同时String提供了很多操作字符串的功能。ArrayList代表的是集合类,是一种容器,与数组类似,不同的是集合的大小是不固定的。java.lang.String 类代表字符串,String类定义的变量可以用于指向该字符串,然后操作该字符串。String常被称为不可变字符串类型,它的对象在创建后不能被更改。String变量每次的修改其实都是产生并指向了新的字符串对象,原来的字符串对象没有改变。

跑调却靠谱的博客 464

Java知识【StringAPI使用&String类】

String类:String概述,特点,构造方法,字符串对象的两种方式,字符串的比较,(遍历,统计字符次数,字符串拼接,反转案例)

日常学习总结 896

_StringAPI

API:   1. 转义字符: 将字符串中和程序冲突的字符转义为原文的特殊字符      何时使用: 只要字符串中包含和程序冲突的特殊符号时      如何使用: 1. 包含和程序冲突的特殊符号:  在特殊符号前加\,将符号转为原文            如果特殊符号就是\,要变成\\                2. 字符串中包含特殊功能的符号:    \n 换行    \t 制

java_zhaoyanli的专栏 512

JAVA常用的StringAPI

Java字符串操作常用API摘要:String类提供多种字符串处理方法。1.创建与比较:equals比较内容,==比较地址;2.子串截取:substring(beginIndex)和substring(begin,end);3.大小写转换:toLowerCase/toUpperCase;4.去空格:trim();5.替换:replace()支持字符/字符串替换;6.查找:indexOf/lastIndexOf定位子串位置;7.拼接与判断:concat()连接字符串,contains()检查子串存在。

2301_79783364的博客 222

StringApi Java

public class StringApi { public static void main(String[] args) { String s = "Hello,this is the test text!"; System.out.println(s); System.out.println("char charAt(int...

weixin_30355437的博客 72

java一些简单的StringAPI

String // char转String (1) char[] helloArray = { 'a', 'b', 'c'}; String helloString = new String(helloArray); // char转String (2) char[] helloArray = { 'a', 'b', 'c'}; String helloString = ""; helloString = helloString.copyValueOf( helloArray ); // 从下标2位置获

小羽的博客 396

java-StringAPI中的==与equals的辨析

//==比较的是变量的地址值,而String类重写了object类的equals方法,比较的是字符序列 String a="hello"; String b="word"; String c="helloword"; String d=new String("helloword"); System.out.println

冰河家园的博客 282
上一篇: Java基础--运算符
下一篇: Java基础--String格式化
jmf_java
博客等级 码龄9年 0粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值