0Pricing
Java Academy · 课时

字符串

字符串

字符串 是 CoddyKit 上的免费 Java Academy 课时。 这是第 1 节课,共 1 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Java Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Java Academy 课程共包含 1 节课。

简介

您好,

字符串数据类型用于在 Java 中保存文本数据。字符串在 Java 中是引用数据类型,而不是基本数据类型。

将文本数据放入字符串类型的变量时,需要将其放在双引号之间。

示例

让我们定义一个简单的字符串。

String myText = "Coddy String";

字符串

完成这一定义后,Java 会在堆中为我们的字符串创建一个对象。

由于字符串是引用数据类型的对象,因此它包含由 Java 应用程序接口提供的内置方法。

字符串拼接

在 Java 中,可以使用 (+) 运算符组合两个不同的字符串。



class Main {
    public static void main(String[] args) {
        String catOne = "Coddy";
        String catTwo = "Garfield";

        String catNames = catOne + " " + catTwo;
        System.out.println(catNames);
    }
}

concat 方法

除了 + 运算符外,我们还可以使用 concat 方法合并两个不同的字符串。

System.out.println(catOne.concat(catTwo));
//CoddyGarfield

长度方法

其中最常用的可能是长度方法。

借助这些方法,我们可以查看一个字符串表达式由多少个字符组成。



class Main {
    public static void main(String[] args) {
        String myText = "Coddy String";
        System.out.println("total char:" + myText.length());
    }
}

大写与小写

现在,让我们学习如何使用 toUpperCase 和 toLowerCase 方法。



class Main {
    public static void main(String[] args) {
        String catOne = "Coddy";
        String catTwo = "Garfield";
        System.out.println(catOne.toUpperCase());   // CODDY
        System.out.println(catTwo.toLowerCase());   // garfield
    }
}

indexOf

如果要在字符串中进行搜索,我们将使用 indexOf 方法。

在下面的示例中,搜索了字符 s,发现它位于索引 7。



class Main {
    public static void main(String[] args) {
        String txt = "My cat is Coddy";
        System.out.println(txt.indexOf("s")); //7
    }
}

引号

这里可能会想到以下问题。

字符串放在双引号之间,但如果想像下面这样在字符串中传递双引号,该怎么办呢?

String txt = "My cat is "Coddy"";

转义字符

上述代码包含语法错误,编译器无法对其进行编译。如果要在字符串表达式中使用双引号,需要使用作为转义字符的反斜杠。

这个字符会告诉编译器,这是一个字符串表达式,应在文本中进行求值。



class Main {
    public static void main(String[] args) {
        String txt = "My cat is \"Coddy\"";
        System.out.println(txt); //My car is "Coddy"
    }
}

示例

定义字符串时,我们说明它是引用类型,而不是基本类型。

现在让我们定义两个值相同的字符串。



class Main {
    public static void main(String[] args) {
        String catOne = "Coddy";
        String catTwo = "Coddy";
        boolean status = catOne == catTwo;
        //status => false
    }
}

equals 方法

== 运算符会对基本类型变量执行值比较。字符串等对象类型保存的是内存地址,而不是对象本身。

定义两个对象时,即使它们的值相同,由于位于内存中的不同区域,catOne 和 catTwo 变量实际保存的也是不同地址。这就是使用 == 进行比较时返回假值的原因。

equals 方法用于比较两个字符串的值。

if(catOne.equals(catTwo)){
	//codeblock works
}

equals 方法

equals 方法用于比较两个字符串的值。

if(catOne.equals(catTwo)){
	//codeblock works
}

示例续

在上面的示例中,equals 方法会返回真值,因为它比较的是对象中的数据,而不是对象的地址。

恭喜

在本节中,我们学习了 Java 中的字符串。

下一课再见。 🥳

字符串 — 插图 15

常见问题解答

「字符串」课时是免费的吗?

是的 — 「字符串」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Java Academy 课程的其余内容,请升级到 CoddyKit PRO。 Java Academy 课程共包含 1 节课。

「字符串」这节课中我会学到什么?

字符串 你通过在浏览器中直接运行的动手代码来练习 Java Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Java Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Java Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 1 节。

「字符串」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Java Academy 课中编写并运行代码吗?

能。每节 Java Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

← 返回 Java Academy