String类常用的API


字符串内容的比较:

注意:

不能使用 == 去比较两个字符串的内容。原理:比较的是字符串的地址。

(如果两个字符串都是使用""进行赋值,那么他们都是放在常量池中,只要字符串内容一致,那么他们的地址相同,比较返回值为true。如果一个字符串为""直接赋值一个字符串为对象赋值,那么比较返回值为false,因为前者被存在常量池中一个被放在堆内存中两者的地址不同,即比较结果为false。)

内容比较:

推荐使用String类提供的 equals 方法:只关心内容一致即可。

方法名 说明 应用
public boolean equals(Object anObject) 将此字符串与指定对象进行比较。只关心字符内容是否一致! 登录账号密码的比较
public boolean equalsIgnoreCase(String anotherString) 将此字符串与指定对象进行比较,忽略大小写比较字符串,只关心字符内容是否一致! 验证码的比较

String常用API(其他的非常多,后面继续补充)

方法名 说明
public intlength() 返回此字符串的长度
public char charAt(int index) 获取某个索引位置处的字符
public char[] toCharArraiy(): 将当前字符串转换成字符数组返回
public String substring(int beginIndex, int endIndex) 根据开始和结束索引进行截取,得到新的字符串(包前不包后)
public String substring(int beginIndex) 从传入的索引出截取,截取到末尾,得到新的字符串
public String replace(CharSequence target,CharSequence replacement) 得到新值,将字符串中的旧值替换,得到新的字符串
public String[] split(String regex) 根据传入的规则切割字符串,得到字符串数组返回

代码:

//1.返回此字符串的长度
name.length(); //2.获取某个索引位置处的字符
for (int i = 0; i < name.length(); i++) {
char ch =name.charAt(i);
System.out.println(ch);
}
//3.将当前字符串转换成字符数组返回
char[] chars2 = name.toCharArray();
for (int i = 0; i < chars2.length; i++) {
System.out.println(chars2[i]);
} //4.根据开始和结束索引进行截取,得到新的字符串(包前不包后)
String name2 = "java是最厉害的编程语言!";
String rs = name2.substring(0, 9);
System.out.println(rs); //java是最厉害的 //5.从传入的索引出截取,截取到末尾,得到新的字符串
String rs2 = name2.substring(4);
System.out.println(rs2); //是最厉害的编程语言! //6.得到新值,将字符串中的旧值替换,得到新的字符串
String name3 = "金三胖是最厉害的80后!我好爱金三胖";
String rs3 = name3.replace("金三胖", "***");
System.out.println(rs3); //7.根据传入的规则切割字符串,得到字符串数组返回
String name4 = "王宝强,贾乃亮,陈羽凡";
String[] names = name4.split(",");
for (int i = 0; i < names.length; i++) {
System.out.println("选择了:" + names[i]);
}

String类常用的API的更多相关文章

  1. Java之String类常用API

    目录 Java之String类常用API char chatAt(int index) int length() char[] toCharArray() String(char value[]) S ...

  2. C++string类常用函数

    C++string类常用函数 string类的构造函数:string(const char *s);    //用c字符串s初始化string(int n,char c);     //用n个字符c初 ...

  3. String类常用功能

    String类常用功能 判断: boolean equals(Object obj) boolean equalsIgnoreCase(String str) //忽略大小写 boolean star ...

  4. String 类的实现(3)String类常用函数

      2 #include<iostream> 3 #include<stdio.h> 4 #include<assert.h> 5 #include <iom ...

  5. C++字符串string类常用操作详解(一)【初始化、遍历、连接】

    代码示例: #include <iostream> #include "string" using namespace std; //字符串初始化 void strIn ...

  6. String 类 常用函数

    构造方法摘要: String(byte[] bytes)           通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String. String(char[] value) ...

  7. 新手C#string类常用函数的学习2018.08.04

    ToLower()用于将字符串变为小写,注意字符串的不可变特性,需要重新赋值给另一个字符串变量. s = s.ToLower();//字符串具有不可变性,转换后需要重新赋值,不可仅有s.ToLower ...

  8. C# String类常用操作

    1.string.Compare(s1,s2) 比较  按字母顺序后边的大于前边的 s1<s2 retrun -1 ;s1=s2 return 0; s1>s2 return1. Cons ...

  9. String类常用的方法

    (1)int length():返回字符串的长度,例如: String s1="hello"; System.out.println(s1.length());//显示为5 (2) ...

随机推荐

  1. [题解][YZOJ50104] 密码 | 简单计数

    同步发表于 Mina! 题目大意 对于满足以下要求的长度为 \(n\) 的序列进行计数: 序列的值域为 \([1,k]\); 对于序列的任意位置 \(p\in[1,n]\),可以找到至少一个 \(i\ ...

  2. Docker被禁了!只能靠它了......

    科技飞速发展的今天,企业对候选人有了新的更高要求,如市场.运营等必须会Python.Sql,面试常问诸如用户漏斗等考察数据分析能力.可以说,懂数据的人会更有竞争力通过面试. 而市场上,专业的数据分析人 ...

  3. golang get process name by pid

    一个很好的问题:How golang to get process name by process id (pid)? 目前看来go api并没有提供通过pid获取进程名称的方法,可以通过 /proc ...

  4. Spring Ioc源码分析系列--Ioc容器BeanFactoryPostProcessor后置处理器分析

    Spring Ioc源码分析系列--Ioc容器BeanFactoryPostProcessor后置处理器分析 前言 上一篇文章Spring Ioc源码分析系列--Ioc源码入口分析已经介绍到Ioc容器 ...

  5. 基于SqlSugar的开发框架的循序渐进介绍(1)--框架基础类的设计和使用

    在实际项目开发中,我们可能会碰到各种各样的项目环境,有些项目需要一个大而全的整体框架来支撑开发,有些中小项目这需要一些简单便捷的系统框架灵活开发.目前大型一点的框架,可以采用ABP或者ABP VNex ...

  6. 多线程07:async、future、packaged_task、promise

    async.future.packaged_task.promise 本节内容需要包含头文件:#include <future> 一.std::async. std::future 创建后 ...

  7. MySQL中读页缓冲区buffer pool

    Buffer pool 我们都知道我们读取页面是需要将其从磁盘中读到内存中,然后等待CPU对数据进行处理.我们直到从磁盘中读取数据到内存的过程是十分慢的,所以我们读取的页面需要将其缓存起来,所以MyS ...

  8. Codeforces Round #773 (Div. 2)

    这一场打的非常一般,不过把D想出来了(当然只剩10min没有写出来). A.Hard Way 题意:(很怪的题,我读题读半天)给你一个三角形(端点都在整数点上),问从x轴往上划线(不一定垂直)画不到的 ...

  9. 创建NuGet本地包源

    NuGet 是免费.开源的包管理开发工具,专注于在 .NET 应用开发过程中,简单地合并第三方的组件库.使用Visual Studio 可以很方便地将类库等项目打包发布,最简单的办法是上传到Nuget ...

  10. 移动云使用 JuiceFS 支持 Apache HBase 增效降本的探索

    作者简介: 陈海峰,移动云数据库 Apache HBase 开发人员,对 Apache HBase.RBF.Apache Spark 有浓厚兴趣. 背景 Apache HBase 是 Apache H ...