package com.javaBase.string;

import java.util.Locale;

/**
* 〈一句话功能简述〉;
* 〈String类中常用的方法整理〉
*
* @author
* @see [相关类/方法](可选)
* @since [产品/模块版本] (可选)
*/
public class CommonStringMethod { public static void main(String[] args) {
// testLength();
// testChartAt();
// testToCharyArray();
// testIndexOf();
// testToUpperCaseAndToLowerCase();
// testSplit();
// testTrim();
// testSubstring();
// testEqualsIgnoreCase();
// testContains();
// testStartsWithAndEndsWith();
testReplaceAll();
} /**
* length() 返回此字符串的长度。长度等于字符串中 Unicode 代码单元的数量。
* 返回值为 int 类型。得到一个字符串的字符个数(中、英、空格、转义字符皆为字符,计入长度)
*/
public static void testLength() {
String str = "123456 \t \n";
System.out.println(str.length());
} /**
* charAt(index);返回指定索引处的 char 值。索引范围为从 0 到 length() - 1。序列的第一个 char 值位于索引 0 处,
* 第二个位于索引 1 处,依此类推,这类似于数组索引。
*/
public static void testChartAt() {
String str = "123456";
System.out.println(str.charAt(0));
System.out.println(str.charAt(1));
} /**
* toCharArray();将此字符串转换为一个新的字符数组。
*/
public static void testToCharyArray() {
String str = "123456";
char[] arr = str.toCharArray();
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i]);
} /**
* indexOf(int ch);返回指定字符在此字符串中第一次出现处的索引
* indexOf(int ch, int fromIndex);返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索
* indexOf(String str);返回指定子字符串在此字符串中第一次出现处的索引
* indexOf(String str, int fromIndex);返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始
*/
public static void testIndexOf() {
String str = "123456";
System.out.print(str.indexOf('1'));
System.out.print(str.indexOf('1',1));
System.out.print(str.indexOf("1"));
System.out.print(str.indexOf("1",1));
} /**
* toLowerCase();使用默认语言环境的规则将此 String 中的所有字符都转换为小写
* toLowerCase(Locale locale);使用给定 Locale 的规则将此 String 中的所有字符都转换为小写
* toUpperCase();使用默认语言环境的规则将此 String 中的所有字符都转换为大写
* toUpperCase(Locale locale);使用给定 Locale 的规则将此 String 中的所有字符都转换为大写
*/
public static void testToUpperCaseAndToLowerCase() {
String str = "123456";
System.out.println(str.toUpperCase()); //123456
String str2 = "奥术大师多";
System.out.println(str2.toUpperCase()); //奥术大师多
String str3 = "abcA";
System.out.println(str3.toUpperCase());
System.out.println(str3.toUpperCase(Locale.CANADA_FRENCH)); //了解下local类
System.out.println(str3.toLowerCase());
} /**
* split();根据给定正则表达式的匹配拆分此字符串。
*/
public static void testSplit() {
String str = "123456";
String[] arr = str.split(",");
for (int i=0;i<arr.length;i++)
System.out.println(arr[i]);
} /**
* equals(Object anObject);将此字符串与指定的对象比较。当且仅当该参数不为 null,
* 并且是与此对象表示相同字符序列的 String 对象时,结果才为 true
*/
public static void testEquals() {
String str = "123456";
System.out.println("123".equals(str));
} /**
* trim();返回字符串的副本,忽略前导空白和尾部空白。
* replace(char oldChar, char newChar) ;返回一个新的字符串,它是通过用 newChar
* 替换此字符串中出现的所有 oldChar 得到的。
*/
public static void testTrim() {
String str = " 12 3456 ";
System.out.println(str.trim()); //12 3456
System.out.println(str.replace(" ","")); //123456
} /**
* substring(int beginIndex);返回一个新的字符串,它是此字符串的一个子字符串。该子字符串从指定索引处的字符开始,
* 直到此字符串末尾。
* substring(int beginIndex,int endIndex);返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的
* beginIndex 处开始,直到索引 endIndex - 1 处的字符。因此,该子字符串的长度为 endIndex-beginIndex。
*/
public static void testSubstring() {
String str = "123456";
System.out.println(str.substring(2));
System.out.println(str.substring(2,4)); //左闭右开
} /**
* equalsIgnoreCase(String anotherString);将此 String 与另一个 String 比较,不考虑大小写
*/
public static void testEqualsIgnoreCase() {
String str = "abc";
System.out.println("AbC".equalsIgnoreCase(str));
} /**
* contains(CharSequence s);当且仅当此字符串包含指定的 char 值序列时,返回 true。
*/
public static void testContains() {
String str = "abcdef123";
System.out.println(str.contains("f12"));
} /**
* startsWith(String prefix);测试此字符串是否以指定的前缀开始。
* endsWith(String suffix) ;测试此字符串是否以指定的后缀结束。
*/
public static void testStartsWithAndEndsWith() {
String str = "abcdef123";
System.out.println(str.endsWith("123"));
System.out.println(str.startsWith("123"));
} /**
* replaceAll(String regex, String replacement);使用给定的 replacement 替换此字符串
* 所有匹配给定的正则表达式的子字符串。
*/
public static void testReplaceAll() {
String str = "abcdef1231";
str = str.replaceAll("1","@");
System.out.println(str);
String str2 = "abcdef1231";
str2 = str2.replace("1","#");
System.out.println(str2);
//一样?
String str3 = "abcdef1231";
str3 = str3.replaceAll("\\d", "*"); //abcdef**** replaceAll()支持正则表达式
System.out.println(str3);
}
}

String常用方法解析的更多相关文章

  1. Device Tree常用方法解析

    Device Tree常用方法解析 Device Tree在Linux内核驱动中的使用源于2011年3月17日Linus Torvalds在ARM Linux邮件列表中的一封邮件,他宣称“this w ...

  2. Device Tree常用方法解析【转】

    转自:https://blog.csdn.net/airk000/article/details/21345159 Device Tree常用方法解析 Device Tree在Linux内核驱动中的使 ...

  3. Ext.dom.Element 常用方法解析

    Ext.dom.Element 常用方法解析 Ext.Element,Ext.core.Elemen,Ext.dom.Element 这几个类都是一个类,在EXT当中给起了别名而已,这个类到作用主要是 ...

  4. 前端开发:Javascript中的数组,常用方法解析

    前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...

  5. Javascript语言精粹之String常用方法分析

    Javascript语言精粹之String常用方法分析 1. String常用方法分析 1.1 String.prototype.slice() slice(start,end)方法复制string的 ...

  6. JAVA之旅(十六)——String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较

    JAVA之旅(十六)--String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较 过节耽误了几天,我们继续JAVA之旅 一.String概述 String时 ...

  7. String常用方法

    1. String StringBuffer StringBuilder的区别: 001.在执行速度方法 StringBuilder > StringBuffer > String 002 ...

  8. JVM内存分配及String常用方法

    一,JVM内存分配和常量池 ​ 在介绍String类之前,先来简单分析一下在JVM中,对内存的使用是如何进行分配的.如下图所示(注意:在jdk1.8之后便没有方法区了): ​ ​ 如上JVM将内存分为 ...

  9. JavaScript数组常用方法解析和深层次js数组扁平化

    前言 数组作为在开发中常用的集合,除了for循环遍历以外,还有很多内置对象的方法,包括map,以及数组筛选元素filter等. 注:文章结尾处附深层次数组扁平化方法操作. 作为引用数据类型的一种,在处 ...

随机推荐

  1. Flash挂马实验

    实验目的 了解Flash木马的原理和危害 实现实验所提到的命令和工具,得到实验结果 实验原理 利用Flash挂马的原理并模拟实现挂马 实验内容 掌握Flash挂马的原理并模拟实现挂马 实验环境描述 1 ...

  2. RFC2899广播吞吐量测试——网络测试仪实操

    一.简介 RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Perform ...

  3. 安卓Java主页面的编写

    1 package com.example.first; 2 3 import androidx.appcompat.app.AppCompatActivity; 4 5 import android ...

  4. Qt:QTableWidget

    0.说明 QTableWidget类提供了一个基于Item的Table视图,如下图: Table Widget提供了表格用于显示.Table中的每个Item都是QTableWidgetItem对象. ...

  5. Pycharm:控制台输入输出In Out变为<<<

    Setting中取消勾选'Use IPython if aviable'

  6. 关于 vue2.x 的 $attrs 和 $listeners

    $attrs $attrs 用于多层次组件传递参数(组件标签的attribute,class和style除外),爷爷辈组件向孙子辈组件传递参数(注:参数不能被父辈prop识别,一旦被父辈prop识别且 ...

  7. WordCount基于本地和java的使用

    直接使用hadoop中的wordcount中的jar包进行使用 JAVA实现WordCount import java.io.IOException; import org.apache.hadoop ...

  8. 有关base64的作业

    1.有关Base64的介绍:Base64这个术语最初是在"MIME内容传输编码规范"中提出的.Base64不是一种加密算法,虽然编码后的字符串看起来有点加密的赶脚.它实际上是一种& ...

  9. 利用mysqldump 与 nginx定时器 定时备份mysql库

    1.安装mysqldump(如果备份远程mysql库,本地不用安装mysql 也可以单独使用) yum -y install holland-mysqldump.noarch 2.编写备份脚本 首先这 ...

  10. web自动化之selenium(一)

    自动化搭建环境 1.自动搭建(一) #安装 pip install webdriver-helper 1.1示例 from webdriver_helper import * #get_webdriv ...