Java 字符串操作:带有示例的函数和方法
什么是字符串?
字面意义上的字符串是一系列字符。咦,你说字符,不就是Java中的原始数据类型吗。是的,所以从技术上讲,基本的 Java String 基本上是一个字符数组。
所以我上面的字符串“ROSE ”可以表示如下——
在本教程中,您将学习-
- 什么是字符串?
- 为什么使用字符串?
- 字符串语法示例
- 字符串连接
- 重要的Java字符串方法
为什么要使用字符串?
现代计算机科学的主要功能之一是处理人类语言。
与数字对数学的重要性类似,语言符号对意义和决策也很重要。尽管计算机用户可能看不到它,但计算机在后台处理语言就像计算器一样精确和准确。帮助对话框提供说明。菜单提供选择。数据显示显示状态、错误和语言的实时变化。
作为一名 Java 程序员,您存储和处理语言的主要工具之一就是 String 类。
字符串语法示例
现在,让我们来了解一些语法,毕竟我们需要用Java代码来编写不是吗。
String是一个字符数组,表示为:
//String is an array of characters char[] arrSample = {'R', 'O', 'S', 'E'}; String strSample_1 = new String (arrSample);
从技术上讲,上面例子中String的定义如下-
= new (argument);
现在我们总是不能把我们的字符串写成数组;因此我们可以在 Java 中定义 String 如下:
//Representation of String String strSample_2 = "ROSE";
用技术术语来说,以上表示为:
= ;
字符串类 Java 扩展 对象类。
字符串连接:
连接是两个或多个字符串的连接。
看看下图-
我们有两个字符串 str1 =“Rock” 和 str2 =“Star”
如果我们把这两个字符串加起来,结果应该是 str3=“RockStar”。
查看下面的代码片段,它解释了执行字符串连接的两种方法。
首先是使用“concat ” String 类的方法,第二个是使用算术“+”运算符。两者的输出相同
public class Sample_String{ public static void main(String[] args){ //String Concatenation String str1 = "Rock"; String str2 = "Star"; //Method 1 : Using concat String str3 = str1.concat(str2); System.out.println(str3); //Method 2 : Using "+" operator String str4 = str1 + str2; System.out.println(str4); } }
重要的Java字符串方法:
让我们问Java String 类几个问题,看看它是否能回答:
字符串“长度”方法
你将如何确定给定字符串的长度?我提供了一种称为“长度”的方法。将它用于您需要查找长度的字符串。
public class Sample_String{ public static void main(String[] args){ //Our sample string for this tutorial String str_Sample = "RockStar"; //Length of a String System.out.println("Length of String: " + str_Sample.length());}}
输出:
Length of String: 8
字符串“indexOf”方法
如果我知道长度,我将如何找到哪个字符在哪个位置?简而言之,我将如何找到一个字符的索引?
你自己回答了,伙计,有一个“indexOf”方法可以帮助你确定你指定的特定字符的位置。
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5)); //Index of a given character System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}
输出:
Character at position 5: t Index of character 'S': 4
字符串“charAt”方法
和上面的问题类似,给定索引,我怎么知道那个位置的字符呢?
再简单一个!!使用“charAt”方法并提供您需要查找的字符的索引。
public class Sample_String{ public static void main(String[] args){//Character at position String str_Sample = "RockStar"; System.out.println("Character at position 5: " + str_Sample.charAt(5));}}
输出:
Character at position 5: t
字符串“CompareTo”方法
我是否要检查由某种方法生成的字符串是否等于我要验证的字符串?如何比较两个字符串?
使用“compareTo”方法并指定要比较的字符串。
如果您不希望结果区分大小写,请使用“compareToIgnoreCase”。
如果参数字符串等于此字符串,则结果将具有值 0;如果此字符串按字典顺序小于字符串参数,则值小于 0;如果此字符串按字典顺序大于字符串参数,则值大于 0。
public class Sample_String{ public static void main(String[] args){//Compare to a String String str_Sample = "RockStar"; System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar")); //Compare to - Ignore case System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}
输出:
Compare To 'ROCKSTAR': -32 Compare To 'ROCKSTAR' - Case Ignored: 0
字符串“包含”方法
我部分知道字符串应该包含什么,如何确认字符串是否包含我指定的字符序列?
使用“contains”方法,指定需要检查的字符。
返回 真 当且仅当此字符串包含指定的 char 值序列。
public class Sample_String{ public static void main(String[] args){ //Check if String contains a sequence String str_Sample = "RockStar"; System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}
输出:
Contains sequence 'tar': true
字符串“endsWith”方法
如何确认字符串是否以特定后缀结尾?你又回答了。使用“endsWith”方法并在参数中指定后缀。
返回 真 如果参数表示的字符序列是该对象表示的字符序列的后缀。
public class Sample_String{ public static void main(String[] args){ //Check if ends with a particular sequence String str_Sample = "RockStar"; System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}
输出:
EndsWith character 'r': true
字符串“replaceAll”和“replaceFirst”方法
我想在几个地方修改我的字符串并替换字符串的几个部分?
Java 字符串 Replace、replaceAll 和 replaceFirst 方法。您可以在参数中指定要替换的字符串部分和替换字符串。
public class Sample_String{ public static void main(String[] args){//Replace Rock with the word Duke String str_Sample = "RockStar"; System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}
输出:
Replace 'Rock' with 'Duke': DukeStar
字符串 Java “tolowercase” &Java “touppercase” 方法
我希望我的整个字符串以小写还是大写显示?
只需对需要转换的字符串使用“toLowercase()”或“ToUpperCase()”方法即可。
public class Sample_String{ public static void main(String[] args){//Convert to LowerCase String str_Sample = "RockStar"; System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase()); //Convert to UpperCase System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}
输出:
Convert to LowerCase: rockstar Convert to UpperCase: ROCKSTAR
注意事项:
- String 是一个 Final 类;即一旦创建,价值就不能改变。因此 String 对象被称为不可变对象。
- Java 虚拟机 (JVM) 会为字符串创建一个内存位置,称为 字符串常量池 .这就是为什么不需要‘new’关键字就可以初始化字符串的原因。
- String 类属于 java.lang.String 层次结构 .但是没有必要导入这个类。 Java 平台自动提供它们。
- String 引用可以被覆盖,但不会删除内容;即,如果
String h1 =“hello”;
h1 =“hello”+”world”;
那么“hello”字符串不会被删除。它只是失去了它的手柄。
- 多次引用 可以用于相同的字符串,但它会出现在同一个地方;即,如果
String h1 =“hello”;
String h2 =“hello”;
String h3 =“hello”;
那么在内存中只为字符串“hello”创建一个池,有3个引用-h1,h2,h3
- 如果一个数字被“”引用 然后它变成一个字符串 ,不再是一个数字。这意味着如果
String S1 =”数字为:“+”123”+”456″;
System.out .println(S1);
然后会打印:数字是:123456
如果初始化是这样的:
String S1 ="数字为:"+(123+456);
System.out .println(S1);
然后会打印:数字是:579
这就是字符串的全部内容!
java
- Java 抽象类和抽象方法
- Java 中的 String Length() 方法:如何通过示例查找
- Java String indexOf() 方法与子字符串和示例
- Java String charAt() 方法及示例
- Java String compareTo() 方法:如何与示例一起使用
- Java String contains() 方法 |用示例检查子字符串
- Java String endsWith() 方法及示例
- Java String replace()、replaceAll() 和 replaceFirst() 方法
- Java String toLowercase() 和 toUpperCase() 方法
- Java BufferedReader:如何通过示例在 Java 中读取文件
- Java中的插入排序算法及程序示例
- Java程序中的选择排序与示例