`

字符串String数据类型的探讨

    博客分类:
  • Java
阅读更多

java中,String类型不是基本类型,而是引用类型,也就是说,需要用new来创建对象,即String str=new String();但是实际上也可以直接用等号来赋值,即String str="happy new year!"。所以它是一种特殊的类型。两种赋值方式有什么区别呢?用程序来测试一下。

Public static void main(String[] args){
    String s1="hello!";
    String s2="hello!";
    String s3=new String("hello!");
    String s4=new String("hello!");
    System.out.println(s1==s2);
    System.out.println(s1==s3);
    System.out.println(s3==s4);
}
    对比四个变量的引用地址,显示结果为:true false false
    这是因为s1与s2引用了同一块地址,而s3、s4每次使用new都另外建立了新的地址,与s1、s2的不是同一块地址。所以有了这样的结果。通常情况下,直接用等号给string赋值。
 
参考资料:中软国际教学视频第4章
分享到:
评论

相关推荐

    Python数据类型详解(一)字符串

    简单的说字符串String就是使用引号定义的一组可以包含数字,字母,符号(非特殊系统符号)的集合。今天我们就来详细探讨下Python数据类型中的字符串

    数据结构与算法:语言描述(中英文)

    数据结构的书中通常不包含字符串,但是第7章介绍了字符串、String类和StringBuilder类。这是因为在C#语言中许多的数据处理是在字符串上执行的,读者应该接触基于这两种类的特殊方法。第8章分析了用于文本处理和模式...

    C++程序设计彻底研究(是code不是书)

    22.1 C风格的字符串和面向对象的string类 22.2 String对象的定义 22.3 字符串的更改、清除、剪接与部分复制 22.4 字符串之间的查找和比较 22.5 字符串对象与C.style孚符串的互换 22.6 常犯的错误 22.7 本章...

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    18.3 attribute的构造器和字段/属性的数据类型 18.4 检测定制attribute 18.5 两个attribute实例的相互匹配 18.6 检测定制attribute时不创建从Attribute派生的对象 18.7 条件attribute类 第19章 可空值类型 ...

    详解JavaScript 为什么要有 Symbol 类型?

    但是,它们能为我们做些字符串不能做的事情呢? 在深入探讨 Symbol 之前,让我们先看看一些 JavaScript 特性,许多开发人员可能不知道这些特性。 背景 js 中的数据类型总体来说分为两种,他们分别是:值类型 和 引用...

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    18.3 attribute的构造器和字段/属性的数据类型 18.4 检测定制attribute 18.5 两个attribute实例的相互匹配 18.6 检测定制attribute时不创建从Attribute派生的对象 18.7 条件attribute类 第19章 可空值类型 ...

    CLR.via.C#.(中文第3版)(自制详细书签)

    18.3 attribute的构造器和字段/属性的数据类型 18.4 检测定制attribute 18.5 两个attribute实例的相互匹配 18.6 检测定制attribute时不创建从Attribute派生的对象 18.7 条件attribute类 第19章 可空值类型 ...

    CLR.via.C#.(中文第3版)(自制详细书签)Part3

    18.3 attribute的构造器和字段/属性的数据类型 18.4 检测定制attribute 18.5 两个attribute实例的相互匹配 18.6 检测定制attribute时不创建从Attribute派生的对象 18.7 条件attribute类 第19章 可空值类型 ...

    值类型和引用类型的区别

    值类型和引用类型的区别: 似乎“值类型和引用类型的区别”是今年面试的流行趋势,我已然是连续三次(目前总共也就三次)面试第... C#中基本数据类型是值类型,结构也是值类型。而数组、类、接口、字符串都是引用类型。

    javascript之typeof、instanceof操作符使用探讨

    因为几乎不可能从他们那里得到想要的结果” typeof 说明:typeof返回一个表达式的数据类型的字符串,返回结果为js基本的数据类型,包括number,boolean,string,object,undefined,function。 从说明来看,貌似没什么...

    PMJSON:纯Swift JSON编码解码库

    对于如何处理格式错误的数据,有几种不同的选择(例如,是否忽略错误类型的值,以及是否尝试将非字符串值强制转换为字符串,反之亦然),但以下示例将非常严格并抛出错误输入值的错误: struct Address { var ...

    JAVA基础课程讲义

    字符串相关类(String、 StringBuffer 、 StringBuilder) 120 String类的常用方法(已讲过,不再讲!) 120 StringBuffer和StringBuilder 121 String和StringBuffer和StringBuilder使用要点 123 时间处理相关类 124...

    asp.net知识库

    .NET 2.0中的字符串比较 小试ASP.NET 2.0的兼容性 为 asp.net 2.0 的菜单控件增加 target 属性 ASP.NET 2.0 的内部变化 常见的 ASP.NET 2.0 转换问题和解决方案 Asp.Net2.0无刷新客户端回调 体验.net 2.0 的优雅(1...

    Url重写篇视频------本讲将通过实例比较ASP.NET下的三种典型URL重写方案

    创建数据驱动的 ASP.NET 网站时,通常会产生一个单个的网页,该网页基于查询字符串参数显示数据库数据的子集。例如,在设计电子商务站点时,您的任务之一便是允许用户浏览待售产品。为此,您可以创建一个名为 ...

Global site tag (gtag.js) - Google Analytics