`
shawnccx
  • 浏览: 166791 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

字符串和多个char类型的字符相加比较问题

 
阅读更多
错误案例
【现象描述】表面看上去内容一样的字符串和单个字符拼接比对,结果永远为false

【错误代码】 "34".equals('3' + '4')




错误分析
当且仅当+操作符的操作数中至少有一个是String类型时,才会执行字符串连接操作;否则,执行加法。

如:在本例中'3' + '4'得到的结果是整型数值103,而不是字符串"34"。

如果是字符'a' + 'b'得到的结果是a,b字符的ASCII码相加的整型数值。

根据这样的情况,可以有几种选择:

1、 预置一个空字符串("" + 'a' + 'A')

2、 将第一个数值用String.valueOf()显示地转换成一个字符串(String.valueOf('a') + 'A')

3、 使用一个字符串缓冲区(sb.append('a');sb.append('A'););

正确用法
"ab".equals("" + '3' + '4')

分享到:
评论

相关推荐

    VB调用VC写的DLL 实现两个字符串相加成一个字符串

    需要注意的是,由于VB和VC++对字符串的处理方式不同,这里使用了`const char*`作为VC++的参数类型,而在VB中则直接使用字符串类型。在实际应用中,可能需要考虑字符编码、内存管理等问题,以避免潜在的兼容性问题。 ...

    MFC字符串CString 操作用法详解

    这个函数返回的是字符串中字节的数量,对于多字节字符集(MBCS),每个字符占用多个字节时,也会按照每个字节计数。 2. **MakeReverse()**: 颠倒字符串的顺序。 ```cpp csStr = "ABCDEF中文123456"; csStr....

    字符串检测VC

    "字符串检测VC"的标题和描述暗示了我们将会探讨如何在VC环境中对字符串进行基本的操作,如字符串的相加减、空串判断以及编辑框中的字符串管理。以下是对这些知识点的详细说明: 1. **字符串的相加减**: 在C++中,...

    cad 字符串里自动提取数字求和

    LISP提供了`CHAR`函数来获取字符串中的单个字符,以及`TYPEP`或`CHARACTERP`来判断字符类型。 2. **数字识别**:使用`NUMBERP`函数来判断字符是否为数字。如果字符是数字,将其转换为整数或浮点数,可以使用`PARSE-...

    TCHAR字符串类 TString

    6. **截取与分割**:`Mid`、`Left`、`Right`等方法允许提取字符串的一部分,而`Tokenize`或`Split`函数可以将字符串分解为多个子字符串。 7. **转换操作**:`ToASCII`和`ToUnicode`(如果适用)可能用于在ANSI和...

    C语言中压缩字符串的简单算法小结

    这个方法直接将字符串中的每个字符的ASCII码值相加,并对结果取模以适应目标表的大小。例如,给定函数`HashString(const char *pString, unsigned long tableSize)`,它将字符串的每个字符累加,然后取模以适应table...

    Java中string字符串和char字符之间的千丝万缕

    以上内容详细介绍了Java中String字符串和char字符之间的转换和拼接操作,包括它们的基本概念、转换方法和拼接技巧。在实际编程中,这些操作是非常常见的,理解和掌握这些知识点对于编写高效、灵活的Java代码至关重要...

    MATLAB字符串数组[借鉴].pdf

    `char` 函数将多个字符串合并成一个多行数组,`str2mat` 将字符数组转换为字符串数组,而 `strvcat` 垂直堆叠字符串,形成一个多行数组。 ### 4. 数组/字符串转换函数 MATLAB提供了几种转换函数,方便在数值和字符...

    MATLAB数组字符串的意义,常见的操作解析.pdf

    自MATLAB R2016b版本起,引入了字符串数组这一新数据类型,使得处理多个字符串变得更加方便。字符串数组支持一维或多维,允许高效地进行字符串操作,如排序、搜索和修改,极大地扩展了MATLAB在文本处理方面的功能。 ...

    java 倒置字符串

    在这个例子中,我们首先创建一个`StringBuilder`对象,然后调用其`reverse()`方法来反转字符串,最后将结果转换回`String`类型。 2. 使用字符数组: 另一种方法是创建一个字符数组,将原始字符串的字符复制到数组...

    字符串转换程序

    - `gcvt()`函数与`ecvt()`和`fcvt()`类似,但不同之处在于它会将结果直接写入指定的缓冲区中,而不是返回一个新的字符串。 示例代码: ```c #include #include int main(void) { double a = 123.45; double b...

    MATLAB中的数组和字符串操作指南

    将两个或多个字符串合并成一个新的字符串是非常常见的需求。在MATLAB中,可以使用加号运算符(`+`)来实现这一功能: ```matlab full_str = str1 + ' ' + str2; % 将两个字符串拼接在一起 ``` 这里使用了一个空格...

    C++ 练气期之一文看懂字符串.doc

    总之,C++中的字符串涉及的概念和细节较多,理解并熟练掌握字符串的存储和操作对于编写高效、安全的C++代码至关重要。无论是C语言风格的字符数组还是C++对象风格的`std::string`,都有其适用的场景,根据具体需求...

    c++-c++编程基础之leetcode题解第43题字符串相乘.zip

    对于这个问题,我们可以将两个字符串分别分为左半部分和右半部分,然后计算四种可能的乘积:左左、左右、右左、右右。之后,我们将这些乘积相加,并处理进位,得到最终的乘积字符串。 C++中处理字符串的主要库是`...

    VB将16进制字符串转为10进制校验和代码.rar

    在这个例子中,校验和的计算方法是将16进制字符串的每个字符转换成10进制,然后将这些数值相加。为了去除字符串中的空格、回车和换行符,我们可以使用字符串函数,如`Replace`,来替换或删除这些非数字字符。 以下...

    C#字符串常见操作总结详解

    (2)字符串转为比特码 GetBytes()(3)字符串相加 推荐StringBuilder sb = new StringBuilder();sb.Append();(4)截断字符串的一部分 变量.SubString(起始位置,截取位数);(5)查指定位置是否为空字符 char....

    c语言长整数相加(超过64位)

    - **功能**:实现字符串a和字符串b表示的两个大整数相加,并将结果存储在字符串c中。 - **参数**: - `char a[]`:第一个大整数表示的字符串。 - `char b[]`:第二个大整数表示的字符串。 - `char c[]`:存放相加...

    C语言入门-leetcode练习之第43题字符串相乘.zip

    通过这种方式,我们可以利用C语言的基础数据类型和字符串处理功能来解决这个算法问题。这个解题方法不仅锻炼了对字符串操作的理解,还加深了对C语言数组、指针和内存管理的掌握。 总结来说,此资源包提供了一个很好...

    JAVA面试题解惑系列(六)——字符串(String)杂谈[收集].pdf

    在字符串拼接的场景中,如果直接使用`+`运算符连接多个`char`变量,例如`System.out.print(a + b + c + d + e + f)`,实际上会触发隐式的类型转换,`char`变量会被转换为对应的Unicode编码(整数值),然后进行数字...

    C 代码 计算字符串的 Luhn 校验位,或验证字符串, 用于信用卡号中的错误检测.rar

    这段代码首先定义了一个`calculateLuhnSum`函数,它接受一个数字字符串作为参数,然后按照Luhn算法计算校验和。在`main`函数中,我们调用这个函数并打印出验证结果。 总的来说,理解和实现Luhn校验算法对于处理金融...

Global site tag (gtag.js) - Google Analytics