java 常量表达式
原文地址:http://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.28
这是我翻译的,以备不时之用。
常量表达式是一个代表基本数据类型或者String数据类型的表达式,是在编译期间能计算出来的值.由以下几点组成:
- 基本数据类型或者String数据类型的字面值
- 转换成基本数据类型或者String(这点不是很理解)
- 一元操作符(只针对于数字):+(加法也对string的字面值有效),-,~,and,!(但不包括++or--)
- 乘法操作符: *,/
- 移位运算符: <<,>>和>>>
- 关系操作符: <,<=,>,>=
- 比较操作符: ==,!=
- 位运算符和逻辑操作符 : &,^.|
- 条件与和条件或操作符: &&,||
- 三元运算符 : ? :
- 带括号的表达式, 这个括号里面的内容是一个常量表达式
- 简单的变量名, 引用的是一个常量表达式 final int x = 0 ; y = x ;//这个x就是简单变量名 final String str = "a" ; str2 = str+"b" ; str1="ab" str1==str2 ;
- 类型名.变量名, 引用的是一个常量表达式 Math.PI
String类型的常量表达式往往通过interned()方法来保证唯一性, 所以String类型往往是interned(这个不知道该怎么描述)
//http://www.iteye.com/problems/27151
//个人理解, 如有不正确的地方, 欢迎指出
java 常量表达式的更多相关文章
- Java常量字符串String理解
		Java常量字符串String理解 以前关于String的理解仅限于三点:1.String 是final类,不可继承2.String 类比较字符串相等时时不能用“ == ”,只能用 "eq ... 
- 【转载】Java常量池
		本篇随笔为转载,原贴地址:Java常量池理解与总结. (其实Java的常量池有点像C++中的存储字符串常量的常量存储区). 一.相关概念 什么是常量用final修饰的成员变量表示常量,值一旦给定就无法 ... 
- Java常量字符串String理解 String理解
		以前关于String的理解仅限于三点:1.String 是final类,不可继承2.String 类比较字符串相等时时不能用“ == ”,只能用 "equals" 3.Strin ... 
- java三元表达式编程规范问题
		package day01; public class Program { public static void main(String[] args) { // TODO Auto-g ... 
- C++11特性——变量部分(using类型别名、constexpr常量表达式、auto类型推断、nullptr空指针等)
		#include <iostream> using namespace std; int main() { using cullptr = const unsigned long long ... 
- 触摸java常量池
		java常量池是一个经久不衰的话题,也是面试官的最爱,题目花样百出,小菜早就对常量池有所耳闻,这次好好总结一下. 理论 小菜先拙劣的表达一下jvm虚拟内存分布: 程序计数器是jvm执行程序的 ... 
- Java Lambda表达式初探
		Java Lambda表达式初探 前言 本文受启发于Trisha Gee在JavaOne 2016的主题演讲Refactoring to Java 8. Java 8已经发行两年多,但很多人仍然在使用 ... 
- Java Lambda表达式入门
		Java Lambda表达式入门 http://blog.csdn.net/renfufei/article/details/24600507 Java 8十个lambda表达式案例 http://w ... 
- Java Web表达式注入
		原文:http://netsecurity.51cto.com/art/201407/444548.htm 0×00 引言 在2014年6月18日@终极修炼师曾发布这样一条微博: 链接的内容是一个名为 ... 
随机推荐
- 【JavaScript 11—应用总结】:下拉菜单
			导读:在web页面的显示中,总是免不了下拉菜单的设置.怎样将菜单设置的更好玩一点呢?这次,就将实现一个下拉菜单的制作.当鼠标移入的时候,菜单显示,鼠标移走,菜单关闭. 一.实现分析 首先,制作一个下拉 ... 
- 安卓ImageView.src设置图片拉伸、填满控件的方法
			代码改变世界 安卓ImageView.src设置图片拉伸.填满控件的方法 需要给你的ImageView布局加上Android:adjustViewBounds="true" 
- 【Luogu】P1199三国游戏(博弈论)
			题目链接 来看一波有理有据的分析 三牧小明的那篇 代码 #include<cstdio> #include<cctype> #include<algorithm> ... 
- 刷题总结——小凸玩矩阵(scoi)
			题目: 题目背景 SCOI2015 DAY1 T1 题目描述 小凸和小方是好朋友,小方给了小凸一个 n×m(n≤m)的矩阵 A,并且要求小凸从矩阵中选出 n 个数,其中任意两个数都不能在同一行或者同一 ... 
- 算法复习——LCT(bzoj2049洞穴勘测)
			题目: Description 辉辉热衷于洞穴勘测.某天,他按照地图来到了一片被标记为JSZX的洞穴群地区.经过初步勘测,辉辉发现这片区域由n个洞穴(分别编号为1到n)以及若干通道组成,并且每条通道连 ... 
- 16.1112 模拟考试 T1
			加密[问题描述]有一种不讲道理的加密方法是: 在字符串的任意位置随机插入字符. 相应的,不讲道理的解密方法就是从字符串中恰好删去随机插入的那些字符.给定原文s和加密后的字符串t,求?有多少子串可以通过 ... 
- 安卓解析JSON文件
			安卓解析JSON文件 根据JOSN文件的格式,文件只有两种数据,一是对象数据,以 {}为分隔,二是数组,以[]分隔 以下介绍安卓如何解析一个JSON文件,该文件存放在assets目录下,即:asset ... 
- MBP清除NVRAM和PRAM
			Mac 会将某些设置存储在特定的存储区中,即使关机这些设置也不会丢失.在基于 Intel 的 Mac 上,存储位置是称为 NVRAM 的内存:而在基于 PowerPC 的 Mac 上,存储位置则是称为 ... 
- Redis的内部运作机制
			本文将分五个部分来分析和总结Redis的内部机制,分别是:Redis数据库.Redis客户端.Redis事件.Redis服务器的初始化步骤.Redis命令的执行过程. 首先介绍一下Redis服务器的状 ... 
- WEB学习-HTML的基本语法特性
			HTML对换行不敏感,对tab不敏感 HTML只在乎标签的嵌套结构,嵌套的关系.谁嵌套了谁,谁被谁嵌套了,和换行.tab无关. 换不换行.tab不tab,都不影响页面的结构. 所以: • <di ... 
