Java面向对象基础5——String类(1)

简介: String类的本质是字符数组,是Java中的文本数据类型。字符串常量是用双引号括起来的内容,Java中所有字符串字面值都作为此类的实例实现

一、前言


在本文将会介绍有关String类的知识


二、String类概述


String类的本质是字符数组,是Java中的文本数据类型。字符串常量是用双引号括起来的内容,Java中所有字符串字面值都作为此类的实例实现


三、String类的创建


1️⃣直接引用双引号


String 字符串名 = “abc”


2️⃣使用new关键字


  • 创建空白字符串:public String()
  • 根据传入的字符串,创建字符串内容:public String(String original)
public static void main(String[] args) {
        String s = new String("abc123");
        System.out.println(s);
    }

cc4fbd65a6fd4c24b6e87e87c9e1319a.png


  • 根据字符数组,创建字符串对象:public String(char[] chs)


public static void main(String[] args) {
        char[ ] c = {'a' , 'b' , 'c' , 'd'};
        String s = new String(c);
        System.out.println(c);
    }

65af920a6eb4453eaa43911bd951cf1a.png


  • 根据字节数组,创建字符串对象:public String(byte[] chs)


public static void main(String[] args) {
        byte[] c = {97,98,99};
        String s = new String(c);
        System.out.println(s);
    }

a8408ccea92e46d6ae1e54c70ab2bf37.png


四、String的API应用


当需要调用某一功能时,可以直接查阅


b1f25889adfe4828b51efe3ece7218d1.png


五、字符串的比较


1️⃣"=="比较


该方法比较的是地址值


new String是存储在堆内存中,而String s2直接赋值存储在 堆内存的串池 中,两者地址值不相同,所以运行结果是false


5ecb1e06468f4486a5cb78e324968914.png


2️⃣equals方法


boolean result = s1.equals(s2)


该方法是指比较两个带有字母的字符串时,一定要完全相同(不忽略)大小写


用IDEA实现一下


public class test2 {
    public static void main(String[] args) {
        String s1 = "ABC";
        String s2 = "abc";
        boolean result = s1.equals(s2);
        System.out.println(result);
    }
}

e82b4b6b61d4498c9f44e59e45fe99e9.png


3️⃣equalsIgnoreCase方法


该方法是指比较两个带有字母的字符串时,可以忽略字母大小写


用IDEA实现一下


public class test2 {
    public static void main(String[] args) {
        String s1 = "ABC";
        String s2 = "abc";
        boolean result = s1.equalsIgnoreCase(s2);
        System.out.println(result);
    }
}

536a9000a25541babda29f2713de9bf2.png


六、结语


本文介绍有关String类以及其操作,下一章将介绍有关String两类的知识


相关文章
|
24天前
|
Java 测试技术 开发者
Java零基础-indexOf(String str)详解!
【10月更文挑战第14天】Java零基础教学篇,手把手实践教学!
110 65
|
1月前
|
Java
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
本文深入探讨了Java中方法参数的传递机制,包括值传递和引用传递的区别,以及String类对象的不可变性。通过详细讲解和示例代码,帮助读者理解参数传递的内部原理,并掌握在实际编程中正确处理参数传递的方法。关键词:Java, 方法参数传递, 值传递, 引用传递, String不可变性。
55 1
【编程基础知识】(讲解+示例实战)方法参数的传递机制(值传递及地址传递)以及String类的对象的不可变性
|
1月前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
67 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
19天前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
12 2
|
24天前
|
Java 测试技术 开发者
Java零基础-indexOf(String str)详解!
【10月更文挑战第13天】Java零基础教学篇,手把手实践教学!
39 1
|
29天前
|
安全 Java 测试技术
Java零基础-StringBuffer 类详解
【10月更文挑战第9天】Java零基础教学篇,手把手实践教学!
24 2
|
1月前
|
存储 安全 C++
【C++打怪之路Lv8】-- string类
【C++打怪之路Lv8】-- string类
21 1
|
1月前
|
数据可视化 Java
让星星月亮告诉你,通过反射创建类的实例对象,并通过Unsafe theUnsafe来修改实例对象的私有的String类型的成员属性的值
本文介绍了如何使用 Unsafe 类通过反射机制修改对象的私有属性值。主要包括: 1. 获取 Unsafe 的 theUnsafe 属性:通过反射获取 Unsafe类的私有静态属性theUnsafe,并放开其访问权限,以便后续操作 2. 利用反射创建 User 类的实例对象:通过反射创建User类的实例对象,并定义预期值 3. 利用反射获取实例对象的name属性并修改:通过反射获取 User类实例对象的私有属性name,使用 Unsafe`的compareAndSwapObject方法直接在内存地址上修改属性值 核心代码展示了详细的步骤和逻辑,确保了对私有属性的修改不受 JVM 访问权限的限制
51 4
|
1月前
|
IDE Java 开发工具
Java“未封闭的 String 表达式”怎么解决
要解决Java中的“未封闭的 String 表示”问题,需检查并修正字符串字面量,确保每个字符串被正确地用双引号括起来。若字符串跨越多行,可使用字符串连接操作符(+)或引入文本块(JDK 13 及以上版本)。这能帮助避免语法错误,并使代码更整洁易读。
|
1月前
|
存储 安全 Java
【一步一步了解Java系列】:认识String类
【一步一步了解Java系列】:认识String类
25 2

热门文章

最新文章