String不属于8种基本数据类型,String是一个对象。因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。

new String()和new String(”")都是申明一个新的空字符串,是空串不是null;

一种是用new()来新建对象的,它会在存放于堆中。每调用一次就会创建一个新的对象。

一种是先在栈中创建一个对String类的对象引用变量str,然后通过符号引用去字符串常量池 里找有没有""中的值,如果没有,则将""中的值存放进字符串常量池 ,并令str指向””中的值,如果已经有则直接令str指向。

代码为两者的区别。

还能看出一点,

简单理解:==比较的是引用位置是否相同,而equals()比较的是数值是否相等。

equals()就是比较两字符串的Unicode序列是否相当,如果相等返回true;而==是 比较两字符串的地址是否相同,也就是是否是同一个字符串的引用。

         String str ="hello";
String str1="he"+new String("llo");
String str2= new String("hello");
System.out.println(str==str1);//false;
System.out.println(str.endsWith(str1));//true;
System.out.println(str1==str2);//false;
System.out.println(str1.equals(str2));//true;
System.out.println("-----------");
System.out.println(str==str2);//false;
System.out.println("-----------");
System.out.println(str.equals(str2));//true;
System.out.println("-----------");
str2 = str2.intern();
System.out.println(str==str2);//true;
System.out.println("-----------");

String类型不属于八种基本类型的更多相关文章

  1. Java的八种基本类型:(按字节来分)

    Java的八种基本类型:(按字节来分) boolean   布尔型   1个字节 8bit(8位) byte     字节类型   1个字节 char     字符类型   2个字节 short    ...

  2. 【Java中级】(一)面向对象的特性与八种基本类型

    1.1.Java 基本数据类型: Java提供了8种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. byte.short.int.long.float.double. ...

  3. SpringIoc以及set注入八种基本类型的简单实现

    SpringIoc以及set注入八种基本类型的简单实现 主要涉及到的技术以及API 反射.xml定义和解析.树模型 反射可以在代码运行状态下动态的创建对象以及调用方法. API:Dom4j.Class ...

  4. HTTP协议八种请求类型介绍

    HTTP 协议中共定义了八种方法或者叫“动作”来表明对 Request-URI 指定的资源的不同操作方式,具体介绍如下: OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法.也可以利用向W ...

  5. http协议的八种请求类型

    GET:向特定的资源发出请求. POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件).数据被包含在请求体中.POST请求可能会导致新的资源的创建和/或已有资源的修改. OPTIONS: ...

  6. Java八种基本类型

    boolean 二进制位: true ,false   byte 二进制位:8 -128 - 127   -2的7次方到2的7次方-1 char 二进制位:16 0 - 65535   short 二 ...

  7. Java源码解读(一) 8种基本类型对应的封装类型

    说起源码其实第一个要看的应该是我们的父类Object,这里就不对它进行描述了大家各自对其进行阅读即可. 一.八种基本类型 接下来介绍我们的八种基本类型(这个大家都知道吧):char.byte.shor ...

  8. java基础(3)--8种基本类型

    八种基本类型 数据类型分为两大类:基本类型,引用类型 基本类型有8种,除了基本类型(8种)以外任何类型都是引用类型.如: String 是引用类型 基本类型有8种(首字母是小写): 整数:byte, ...

  9. String和八种基本数据类型互相转换

    //String转换为对应的八种基本数据类型 String str="100"; //Value out of range. Value:"200" Radix ...

随机推荐

  1. JAVA(windows)安装教程

    JAVA(windows)安装教程 一.下载: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...

  2. spring中的@Transactional注解

    前几天灿哥问我,在做程序的时候,有没有考虑到事务,如果一个函数在中间执行过程中报错了,它会回滚么?我查了一查,spring确实有这样一个注解,能快速帮助我们配置事务管理.下面我就简单介绍一下这个注解. ...

  3. Helm 架构【转】

    在实践之前,我们先来看看 Helm 的架构. Helm 有两个重要的概念:chart 和 release. chart 是创建一个应用的信息集合,包括各种 Kubernetes 对象的配置模板.参数定 ...

  4. k8s node断电重启

    kubernetes断电重启 导致部分pod无法删除 dashboard上处于黄色 kubectl get处于terminate 状态 kubectl delete报错: An error occur ...

  5. HashMap ConcurrentHashMap解读

    前言: 常见的关于HahsMap与ConcurrentHashMap的问题: 数据结构.线程安全.扩容.jdk1.7 HashMap死循环.jdk1.8 HashMap红黑树.容量必须是2的冥次 Ha ...

  6. suse下静默方式安装oracle(无图形界面)

    以 http://www.cnblogs.com/0201zcr/p/4728241.html 为主 以 http://www.cnblogs.com/jyzhao/p/5001782.html 为参 ...

  7. sslopen RSA加解密

    一.  原理概念 OpenSSL定义: OpenSSL是为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法.常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其 ...

  8. ThinkPhp3.2.3缓存漏洞复现以及修复建议

    小编作为一个php(拍黄片)的程序员,今天早上无意间看到thinkphp的缓存漏洞,小编在实际开发过程中用thinkphp3.2.3挺多的. 我们这里来复现一下漏洞 后面我会提出修复建议 首先我们下载 ...

  9. php+ajax 实现无限树列表

    首先介绍我实现的是xhprof插件的日志转为无限树状图,先看效果图: 废话不多说,直接看代码:(辛辛苦苦敲了好久才搞定,逻辑比较多,新手多揣摩) 控制器: 1 <?php 2 3 namespa ...

  10. mysql 结果排序入门