【Java开发】Java基础全体系入门第26篇:2.4 创建字符串对象的区别对比,2.5 字符串的比较【附代码文档】

举报
小帅说java 发表于 2025/09/29 13:36:42 2025/09/29
【摘要】 1. Java概述 2. 第一个演示程序 day02 - Java基础语法 1 类型转换 2. 运算符 3. 流程控制语句 1. switch语句 2. for循环 3. while循环 4. 循环细节 2. 方法的定义和调用 5. 方法的注意事项 6. 方法重载 7. 方法的参数传递 1.Debug模式 2. 进制的介绍与书写格式 1. 类和对象 2. 对象内存图 3. 成员

🚀🚀🚀本篇主要内容

2.4 创建字符串对象的区别对比

  • 通过构造方法创建

​ 通过 new 创建的字符串对象,每一次 new 都会申请一个内存空间,虽然内容相同,但是地址值不同

  • 直接赋值方式创建

[Apache Commons 文档]

​ 以“”方式给出的字符串,只要字符序列相同(顺序和大小写),无论在程序代码中出现几次,JVM 都只会建立一个 String 对象,并在字符串池中维护

2.5 字符串的比较

2.5.1 字符串的比较

  • == 比较基本数据类型:比较的是具体的值

[OpenJDK 文档]

  • == 比较引用数据类型:比较的是对象地址值

String类 : public boolean equals(String s) 比较两个字符串内容是否相同、区分大小写

代码 :

package com.itheima.stringmethod;

public class Demo1Equals {
    public static void main(String[] args) {
        String s1 = "abc";
        String s2 = "ABC";
        String s3 = "abc";

        // equals : 比较字符串内容, 区分大小写

2.6 用户登录案例【应用】

案例需求 :

​ 已知用户名和 ,请用程序实现模拟用户登录。总共给三次机会,登录之后,给出相应的提示

**实现步骤 : **

  1. 已知用户名和 ,定义两个字符串表示即可
  2. 键盘录入要登录的用户名和 ,用 Scanner 实现
  3. 拿键盘录入的用户名、 和已知的用户名、 进行比较,给出相应的提示。
  4. 字符串的内容比较,用equals() 方法实现
  5. 用循环实现多次机会,这里的次数明确,采用for循环实现,并在登录成功的时候,使用break结束循

代码实现 :

package com.itheima.test;

import java.util.Scanner;

public class Test1 {
    /*
        需求已知用户名和 请用程序实现模拟用户登
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。