String字面量
public class assa{
static String ee = "aa";//ee指向常量池中的aa
static String ff = new String("aa");//ff指向堆中的aa
public static void main(String[] args) {
String aa = "aa";//(1)在常量池中找
String bb = new String("aa");//(2)先判断常量池有没有,没有的话在常量池创建aa 再到堆中创建aa,地址bb指向堆中 的aa
String cc = new String("aa");//(3)在堆中创建一个aa,和(2)中创建的不一样
String dd = "aa";//在常量池中创建
System.out.println(aa==bb);//false
System.out.println(bb==cc);//false
System.out.println(aa==dd);//true
System.out.println(ee==aa);//true 都在常量池创建
System.out.println(ff==aa);//false一个指向堆一个指向常量池
System.out.println(ff==bb);//false分别指向堆中不同的aa
String a = "abc";
String b = "a";
final String c="bc";
System.out.println(a==b+"bc");//false b+"bc"会在堆中生产abc
System.out.println(a=="a"+"bc");//true都在常量池
System.out.println(a=="a"+c);//true 用final修饰,是字面量,在常量池中找
}
}
String字面量的更多相关文章
- java基础---->string字面量的使用
这里简单的理解一下java中关于string字面量的知识,关于字节码可以使用java自带的javap工具查看. string字面量 一.直接贴出测试的代码 A string literal alway ...
- java的数据类型、自动拆装箱、字面量
java 中的数据类型分为两大类:值类型(基本数据类型)和引用类型(复合数据类型) 值类型分为 1,整数类型(byte,short,int,long) 2,浮点类型(float,double) 3, ...
- 【Java基础】字面量相加的类型转换
Java字面量的相加类型转换 1.Java 编译期间(javac),凡是字面量和常量的运算,都会先运算出结果 2.运行期当字符串池中有 String"字面量"时,Java 会直接用 ...
- Java - String 的字面量、常量池、构造函数和intern()函数
一.内存中的 String 对象 Java 的堆和栈 对于基本数据类型变量和对象的引用,也就是局部变量表属于栈内存: 而通过 new 关键字和 constructor 创建的对象存放在堆内存: 直接的 ...
- Java 中 String 的字面量与 intern 方法
下方代码主要说明: String b = new String("xyz") 创建2个对象,一个在常量池中的 "xyz",一个 String 实例对象,返回的 ...
- String 的字面量、常量池、构造函数和intern()函数
一.内存中的 String 对象 Java 的堆和栈 对于基本数据类型变量和对象的引用,也就是局部变量表属于栈内存: 而通过 new 关键字和 constructor 创建的对象存放在堆内存: 直接的 ...
- Predicate Format String Syntax 与字面量
字面量: 字符串:单引号或双引号扩起来: %@:系统自动添加,数字则自动去除@(): 无单双引号,系统做数字处理. Single or double quoting variables (or sub ...
- JavaScript对象的理解 及 字面量对象与数组的关系
JavaScript的简单类型包括 数字.字符串.布尔值.null值.undefined值. 其他的值都是对象.对象是可变的键控集合.数组.函数.正则表达式都是对象. 对象是属性的容器,属性都是名字和 ...
- java基本数据类型的字面量
java的基本数据类型一共有8种.其中:(每种类型后面列出了java中的该类型的字面量) 四种整型: int 4字节: 12 +12 -12 077 0xFF 0b101(JDK7中支持的二 ...
随机推荐
- .NET/C# 资源
.NET/C# 开源资源收集 Roslyn ---C# 开源编译器 iSpy免费的开源视频监控平台 https://github.com/ispysoftware/iSpy .NET Fram ...
- shell编程学习笔记(十二):Shell中的break/continue跳出循环
在循环遍历中,可以添加对应判断条件跳出循环,跳出循环可以使用break/continue,这个跟java语言是一样的,break是指跳出整个循环,continue是指跳出当前循环体,继续下一项循环. ...
- 在三台Centos或Windows中部署三台Zookeeper集群配置
一.安装包 1.下载最新版(3.4.13):https://archive.apache.org/dist/zookeeper/ 下载https://archive.apache.org/dist/ ...
- 如何给TableView、CollectionView添加动效
// // ViewController.m // tableViewAnimation // // Created by 冯敏 on 2018/3/13. // Copyright © 2018年 ...
- systemctl -- 系统服务管理器 【转】
systemctl -- 系统服务管理器 systemctl 是系统服务管理器命令,它实际上将 service 和 chkconfig 这两个命令组合到一起. 直接运行命令可以列出所有正在运行的服务 ...
- Nginx 学习专栏
Nginx 入门学习教程 译:Centos7 编译安装Nginx 教程
- CNN(卷积神经网络)、RNN(循环神经网络)、DNN,LSTM
http://cs231n.github.io/neural-networks-1 https://arxiv.org/pdf/1603.07285.pdf https://adeshpande3.g ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (一)
vi/vim使用进阶: 指随意动,移动如飞 (一) << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :hel ...
- mysql知识汇总
一.数据类型介绍 数据类型 字节长度 范围或用法 bigint 8 无符号[0,2^64-1],有符号[-2^63 ,2^63 -1] binary(M) M 类似Char的二进制存储,只包含byte ...
- go mod代理和小技巧
代理 go mod的代理比较出名的有微软的athens,可以基于它搭建一个私有的代理,管理内部的私有代码,而且微软提供了一个公共的代理,我们可以直接使用 Linux export GOPROXY=&q ...