首页 > 代码库 > Java(C#)基础差异-字符串
Java(C#)基础差异-字符串
1、字符串比较
Java
对字符串对象进行比较不能简单的使用比较运算符"==",因为比较运算符比较的是两个字符串的地址是否相同。即使两个字符串的内容相同,两个对象的内存地址也是不同的,使用比较运算符仍
然会返回false。需要使用equals或者equalsIgnoreCase。
举例如下:
public static void main(String[] args) { /* * 对字符串对象进行比较不能简单的使用比较运算符"==",因为 * 比较运算符比较的是两个字符串的地址是否相同。即使两个字符串的内容相同,两个对象的内存地址也是不同的,使用比较运算符仍然会返回false。 * 需要使用equals或者equalsIgnoreCase */ String s1 = new String("abc"); String s2 = new String("ABC"); boolean b = s1.equals(s2); boolean b2 = s1.equalsIgnoreCase(s2); System.out.println("equal结果:" + b); System.out.println("equalsIgnoreCase结果:" + b2);}
运行结果如下:
C#
在C#中,对于引用类型来说,等号(==)比较的是两个变量的”引用” 是否一样,即是引用的”地址”是否相同。而对于equals来说仍然比较的是变量的 ”内容” 是否一样,由于string是微软封装的一个字符串类,在内部他已经对 = = 操作符进行了重写。重写后他比较的则是两个变量的内容是否相同。
举例如下:
public static void TestMethod(){ string s1 = "abc"; string s2 = "ABC"; bool result = s1 == s2; Console.WriteLine(result);}
2、字符串格式化
Java与C#主要是格式化关键字,形式不同,详情较多,不细介绍。
Java(C#)基础差异-字符串
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。