Java 字符串(String)

Java 字符串(String)

Java this 关键字Java 修饰符

Java 字符串(String)

在本教程中,我们将借助示例学习Java String,如何创建它及其各种方法。

在Java中,字符串是一系列字符。例如,“hello”是一个包含字符序列“h”、“e”、“l”、“l”和“o”的字符串。

与其他编程语言不同,Java中的字符串不是基本类型(比如int、char等)。相反,所有字符串都是预定义的名为String的类的对象。例如,

//创建一个字符串

String type = "java programming";在这里,我们创建了一个名为type的字符串。在这里,我们使用"java programming"初始化了字符串。在Java中,我们使用双引号表示字符串。

该字符串是String类的实例。

注意:所有字符串变量都是String类的实例。

Java字符串方法Java String提供了各种方法,使我们可以执行不同的字符串操作。以下是一些常用的字符串方法。

方法描述concat()将两个字符串连接在一起equals()比较两个字符串的值charAt()返回存在于指定位置的字符getBytes()将字符串转换为字节数组indexOf()返回字符串中指定字符的位置length()返回指定字符串的大小replace()将指定的旧字符替换为指定的新字符substring()返回字符串的子字符串split()将字符串分成字符串数组toLowerCase()将字符串转换为小写toUpperCase()将字符串转换为大写valueOf()返回指定数据的字符串表示形式让我们举几个实例。

示例1:Java查找字符串的长度示例class Main {

public static void main(String[] args) {

//创建字符串

String greet = "Hello! World";

System.out.println("字符串是: " + greet);

//checks the string length

System.out.println("字符串的长度: " + greet.length());

}

}输出结果

字符串是: Hello! World

字符串的长度: 12在上面的示例中,我们创建了一个名为greet的字符串。在这里,我们使用了length()方法来获取字符串的大小。

示例2:Java使用concat()连接两个字符串示例class Main {

public static void main(String[] args) {

//创建字符串

String greet = "Hello! ";

System.out.println("第一个字符串: " + greet);

String name = "World";

System.out.println("第二个字符串: " + name);

//连接两个字符串

String joinedString = greet.concat(name);

System.out.println("连接后的字符串: " + joinedString);

}

}输出结果

第一个字符串: Hello!

第二个字符串: World

连接后的字符串: Hello! World在上面的示例中,我们创建了2个名为greet和name的字符串。

在这里,我们使用了concat()方法来连接字符串。因此,我们得到一个名为joinedString的新字符串。

在Java中,我们还可以使用 + 运算符来连接两个字符串。

示例3:使用+运算符的Java连接字符串示例class Main {

public static void main(String[] args) {

//创建字符串

String greet = "Hello! ";

System.out.println("第一个字符串: " + greet);

String name = "World";

System.out.println("第二个字符串: " + name);

//连接两个字符串

String joinedString = greet + name;

System.out.println("连接后的字符串: " + joinedString);

}

}输出结果

第一个字符串: Hello!

第二个字符串: World

连接后的字符串: Hello! World在这里,我们使用了+运算符来连接两个字符串。

示例4:Java比较两个字符串示例class Main {

public static void main(String[] args) {

//创建字符串s

String first = "java programming";

String second = "java programming";

String third = "python programming";

//比较第一个字符串和第二个字符串

boolean result1 = first.equals(second);

System.out.println("第一和第二个字符串相等: " + result1);

//比较第一个和第三个字符串

boolean result2 = first.equals(third);

System.out.println("第一和第三个字符串相等: " + result2);

}

}输出结果

第一和第二个字符串相等: true

第一和第三个字符串相等: false在上面的示例中,我们使用了equals()方法来比较两个字符串的值。

如果两个字符串相同,则该方法返回true,否则返回false。

注意:我们还可以使用 == 运算符 和 compareTo()方法比较2个字符串。

示例5:Java从字符串中获取字符示例class Main {

public static void main(String[] args) {

//创建字符串 using the string literal

String greet = "Hello! World";

System.out.println("字符串是: " + greet);

//返回位置3处的字符

System.out.println("位置3处的字符: " + greet.charAt(3));

//返回位置7处的字符

System.out.println("位置7处的字符: " + greet.charAt(7));

}

}输出结果

字符串是: Hello! World

位置3处的字符: l

位置7处的字符: W在上面的示例中,我们使用了charAt()方法从指定位置访问字符。

示例6:Java Strings其他方法示例class Main {

public static void main(String[] args) {

//创建字符串 using the new keyword

String example = new String("Hello! World");

//返回子字符串World

System.out.println("使用 subString(): " + example.substring(7));

//将字符串转换为小写

System.out.println("使用 toLowerCase(): " + example.toLowerCase());

//将字符串转换为大写

System.out.println("使用 toUpperCase(): " + example.toUpperCase());

//替换字符'!”为“o”

System.out.println("使用 replace(): " + example.replace('!', 'o'));

}

}输出结果

使用 subString(): World

使用 toLowerCase(): hello! world

使用 toUpperCase(): HELLO! WORLD

使用 replace(): Helloo World在上面的示例中,我们使用new关键字创建了一个命名为example的字符串。

这里,

substring() 方法返回字符串World

toLowerCase() 方法将字符串转换为小写

toUpperCase() 方法将字符串转换为大写

replace() 方法替换字符'!'为'o'。

字符串中的转义字符Java中的字符串用双引号表示。例如,

//创建字符串

String example = "This is a string";现在,如果我们想在字符串中包含双引号。例如,

//字符串包含双引号

String example = "This is the "String" class";这将导致错误。这是因为使用双引号来表示字符串。因此,编译器会将其"This is the "视为字符串。

为了解决此问题,在Java中使用了转义字符(\)。现在我们可以在字符串中包含双引号,如下所示:

//使用转义字符

String example = "This is the \"String\" class.";转义字符告诉编译器转义双引号并读取整个文本。

Java字符串是不可变的在Java中,创建字符串意味着创建string类的对象。创建字符串时,无法在Java中更改该字符串。这就是为什么在Java中将字符串称为不可变的原因。

为了更深入地理解它,让我们看一个示例:

//创建字符串

String example = "Hello!";在这里,我们创建了一个字符串对象"Hello!"。创建之后,我们将无法更改它。

现在假设我们要更改字符串。

//向该字符串添加另一个字符串

example = example.concat(" World");在这里,我们尝试将新的字符串添加到先前的字符串。

由于字符串是不可变的,它应该会导致错误。但是这样做很好。

现在看来我们可以更改字符串了。但是,事实并非如此。让我们看看这里实际发生了什么。

我们有一个字符串"Hello!",由名为example的变量引用。现在,在执行上面的代码时,

JVM接受字符串 "Hello!"

将字符串" World" 追加到它

这将创建一个新字符串 "Hello! World"

变量example现在指向新字符串

前一个字符串"Hello!"保持不变

注意:每次创建新字符串并由变量引用它时。

使用new关键字创建字符串到目前为止,我们已经在Java中创建了类似于基本类型的字符串。但是,由于Java中的字符串是对象,因此我们也可以使用new关键字进行创建。例如,

//创建字符串使用new关键字

String name = new String("java string");在上面的示例中,我们使用了new关键字和构造函数String()来创建一个字符串。

String类提供各种其他构造函数创建的字符串。

现在,让我们看看创建字符串的过程与上一个过程有何不同。

使用字符串字面量和new关键字之间的区别现在我们知道了如何使用字符串字面量和new关键字创建字符串,让我们看看它们之间的主要区别是什么。

在Java中,JVM维护一个字符串池来将其所有字符串存储在内存中。字符串池有助于重用字符串。

使用字符串文字创建字符串时,直接提供字符串的值。因此,编译器首先检查字符串池,看看字符串是否已经存在。

如果字符串已经存在, 不会创建新字符串。相反,新引用指向现有字符串。

如果字符串不存在,则创建新字符串。

但是,在使用new关键字创建字符串时,不会直接提供字符串的值。因此,新字符串总是被创建。

Java this 关键字Java 修饰符

相关科技文章

菠萝开花结果时间解析(掌握菠萝开花果实规律)
Bet体育365提款不到账

菠萝开花结果时间解析(掌握菠萝开花果实规律)

⌚ 07-18 👁️ 4500
在哪给滴滴车主五星好评
Bet体育365提款不到账

在哪给滴滴车主五星好评

⌚ 09-20 👁️ 6217
描写小狗嘴巴的句子(推荐18句)
365bet官方网站是多少

描写小狗嘴巴的句子(推荐18句)

⌚ 09-07 👁️ 9735
硬盘跳线图解
Bet体育365提款不到账

硬盘跳线图解

⌚ 07-30 👁️ 5079
火影忍者多少抗魔给落岩
365bet官方网站是多少

火影忍者多少抗魔给落岩

⌚ 10-16 👁️ 9556

合作伙伴