如果程序需要比较两个字符串是否相同,用==进行判断就可以了;但如果要判断两个字符串所包含的字符序列是否相同,则应该使用String重写继承自Object类的equals()方法。jdk中src目录下的java.lang.String类的equals()方法源代码如下:
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
}
return false;
}
String类还是实现了Comparable接口,因此还可以通过String提供的compareTo()方法来判断两个字符串之间的大小。当两个字符串所含的字符序列相等时,程序将返回0。
public class StringDemo2 {
public static void main(String args[]){
String str3 = new String("abc");
String str4 = new String("abc");
if(str3 == str4){
System.out.println("str3与str4是指向同一块内存区域的");
}else if(str3.equals(str4)){
System.out.println("str3与str4所包含的字符序列相等");
}else{
System.out.println("str3与str4不相等");
}
System.out.println(str3.compareTo(str4));
}
}
/*out:
str3与str4所包含的字符序列相等
0
*/
分享到:
相关推荐
在汇编语言编程中,字符串比较是一个常见的任务,它涉及到字符序列的逐个对比来确定它们是否相等或包含关系。下面将详细讲解如何在汇编语言中实现这个功能。 首先,我们需要理解汇编语言的基本概念。汇编语言是一种...
在编程领域,字符串比较是一个常见的任务,特别是在处理文本数据时。`strcmp`函数是C语言标准库中的一个关键函数,用于比较两个字符串的字典顺序。在这个问题中,我们需要独立实现这个函数,而不是直接调用库函数。...
### 两个字符串比较大小的小程序 #### 知识点概览 1. **C++基本语法**:包括头文件的引入、命名空间的使用、结构体定义等。 2. **字符串处理**:如何在C++中手动实现字符串的输入、长度获取及比较。 3. **流程控制...
字符串比较处理宏字符串比较处理宏字符串比较处理宏字符串比较处理宏
字符串比较问题 Description ?问题描述: 对于长度相同的2 个字符串A和B,其距离定义为相应位置字符距离之和。2 个非空格 字符的距离是它们的ASCII码之差的绝对值。空格与空格的距离为0;空格与其它字符的距 离...
这个“简单的密码校验程序”示例,主要涉及的是字符串比较操作,这是编程中最基础但也非常关键的功能之一。下面将详细解释这个主题。 首先,让我们了解一下什么是字符串。在计算机科学中,字符串是由一个或多个字符...
在这个"rf.rar"压缩包中,我们看到涉及到RF字符串处理的三个关键知识点:RF字符串截取、RF字符串比较以及RF字符串切割。 1. RF字符串截取: 正则表达式提供了灵活的字符串截取方式。通过定义匹配模式,可以精确地...
字符串比较是编程中常见的操作,特别是在处理文本数据时。本实例将介绍如何使用C语言的标准库函数来比较字符串。 首先,我们关注的两个主要函数是`strcmp()`和`strncmp()`,它们都定义在`<string.h>`头文件中。`...
这是一个C语言程序,利用字符串函数,来对字符串比较大小,比较字符串。
字符串比较 请求编写一个函数int STRCMP(char *source, char *dest),实现字符串比较。如果两个字符串相等则返回0,否则返回-1; 编程要求: 1,请不要使用直接调用相关的库函数等等,应自己编写处理逻辑; 2,程序...
### 字符串比较知识点 #### 一、设计思想与实现原理 在计算机编程领域,字符串比较是一项基础且重要的操作。本文档将详细解释一个具体的字符串比较程序的设计思想、实现原理及其实现细节。 1. **设计思想阐述**:...
Matlab字符串比较 Matlab字符串比较是程序设计中非常常见且重要的操作之一。字符串比较是对两个不同字符串之间进行比较操作的过程,通常返回布尔值(true 或 false),以判断这两个字符串是否相等。在 Matlab 中,...
"=="和"equals()"是两种常用的字符串比较方法,但它们之间存在一定的区别和使用场景。这篇博客将深入探讨这两个方法的工作原理以及何时应该使用它们。 首先,"=="运算符在Java中主要用于比较基本类型变量的值,如...
《动态规划》之--字符串比较问题(扩展距离),主要思路通过策略和无效性来求解。特点最优子结构性质,重叠子问题。
首先,让我们详细了解这段代码是如何实现字符串比较功能的: ```cpp #include using namespace std; void main() { char *p1, *p2, str1[50], str2[50]; int i; // 输入两个字符串 cout 请输入两个字符串:\n...
本文将详细介绍如何进行字符串比较,并探讨除了代码示例中的方法之外的其他高级技巧。 #### 字符串比较的方法 在Java中,有多种方法可以用来比较两个字符串是否相等: 1. **使用 `equals` 方法:** - 这是最常用...
在互联网时代,面对海量的数据,如何高效地进行远程大规模字符串比较是许多企业和开发者面临的挑战。这一问题涉及到数据处理、分布式计算、算法优化等多个IT领域的关键知识点。以下将详细阐述相关技术点。 首先,...
### switch不能字符串比较解决方法 在Java编程语言中,`switch`语句是一种常见的选择结构,用于基于不同的条件执行不同的代码块。然而,在早期版本的Java(如Java 5及之前)中,`switch`语句只能用于整型变量、枚举...
二、字符串比较 MATLAB提供了多种方式对字符串进行比较: 1. `strcmp(str1, str2)`:比较两个字符串是否完全相同,返回值为布尔类型。如果两者完全一样,返回`true`;否则返回`false`。 2. `strcmpi(str1, str2)`:...
这个是进行字符串比较程序:int bijiao(hstring *s,hstring *t){ int i; for(i=0;i<s->length&&i<t->length;++i) if(s->ch[i]!=t->ch[i]) return(s->ch[i]-t->ch[i]); return s->length-t->length; }