一、字面值定义

创建一个Hero对象会用到new关键字,但是给一个基本类型变量赋值却不是用new. 因为基本类型是Java语言里的一种内置的特殊数据类型,并不是某个类的对象。 

给基本类型的变量赋值的方式叫做 字面值,示例如下:

float hp = 313f;

int armor = 24;

二、整数字面值

  • 当以l或者L结尾的时候,一个整数字面值是long类型,否则就是int类型。 建议使用大写的L而非小写的l,因为容易和1混淆。
  • byte,short,int和long的值都可以通过int类型的字面值来创建。整数的字面值可以用如下四种进制来表示:
    • 十进制: 基 10, 包含从0-9的数字,平常用的就是这种
    • 十六进制: 基 16, 包含从0-9的数字,和从A-F的字母。
    • 八进制: 基 8, 包含从0-7的数字
    • 二进制: 基 2, 包含0和1。(从 JAVA7开始就可以创建 二进制的字面值了)

public class HelloWorld {

public static
void main(String[] args) {

long val = 26L; //以L结尾的字面值表示long型

int decVal = 26; //默认就是int型

int hexVal = 0x1a; //16进制

int oxVal = 032; //8进制

int binVal = 0b11010; //2进制

System.out.println(oxVal);

}

}

三、浮点数字面值

  • 当以f或者F结尾的时候,就表示一个float类型的浮点数,否则就是double类型(以d或者D结尾,写不写都可以)。
  • 浮点数还可以用E或者e表示(科学计数法)
    • e2表示10的二次方,即100
    • 1.234e2 = 1.234x100

public class HelloWorld {

public static
void main(String[] args) {

float f1 = 123.4F;// 以F结尾的字面值表示float类型

double d1 = 123.4;// 默认就是double类型

double d2 = 1.234e2;// 科学计数法表示double

}

}

四、字符和字符串字面值

  • 字符的字面值放在单引号中
  • 字符串的字面值放在双引号中
  • 需要注意的是,\表示转义,比如需要表示制表符,回车换行,双引号等就需要用 \t \r \n \" 的方式进行

public class HelloWorld {

public static
void main(String[] args) {

String name = "盖伦";

char a= 'c';

//以下是转义字符

char tab = '\t'; //制表符

char carriageReturn = '\r'; //回车

char newLine = '\n'; //换行

char doubleQuote = '\"'; //双引号

char singleQuote = '\''; //单引号

char backslash = '\\'; //反斜杠

}

}

五、练习及答案

题目:

定义如下变量,然后为每种不同类型的变量赋予合法的字面值

byte b;

short s;

int i;

long l;

float f;

double d;

char c;

String str;

比如:

b = 12;

如果写成,就会报错,是非法的(因为b是byte类型的,250超过了byte类型的范围)

b= 250;

官方答案:

public class HelloWorld {

public static
void main(String[] args) {

byte b = 24;

short s = 250;

int i = 1400000000;

long l = 3000000;

float f = 9.11f;

double d = 0.618;

char c ='胖';

String str ="您的身材已经被和谐";

}

}

个人整理答案:

Java知识系统回顾整理01基础03变量03字面值的更多相关文章

  1. Java知识系统回顾整理01基础02面向对象03方法

    一.根据实例给出"方法"的定义 在LOL中,一个英雄可以做很多事情,比如超神,超鬼,坑队友 能做什么在类里面就叫做方法 比如队友残血正在逃跑,你过去把路给别人挡住了,导致他被杀掉. ...

  2. Java知识系统回顾整理01基础06数组03排序

    一.选择法排序 选择法排序的思路: 把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来 比较完后,第一位就是最小的 然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个 ...

  3. Java知识系统回顾整理01基础04操作符03逻辑运算符

    一.长路与 和 短路与 无论长路与还是短路与 两边的运算单元都是布尔值 都为真时,才为真 任意为假,就为假 区别 长路与 两侧,都会被运算 短路与 只要第一个是false,第二个就不进行运算了 pub ...

  4. Java知识系统回顾整理01基础03变量02基本变量类型

    一.变量类型分类 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是:  整型 (4种) 字符型 (1种) ...

  5. Java知识系统回顾整理01基础05控制流程03 while

    while和do-while循环语句 一.while:条件为true时 重复执行 只要while中的表达式成立,就会不断地循环执行 public class HelloWorld { public s ...

  6. Java知识系统回顾整理01基础03变量07final关键字

    一.final赋值 final 修饰一个变量,有很多种说法,比如不能改变等等 准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会 二.在声明的时候赋值 i已经被赋值为5,所以这里 ...

  7. Java知识系统回顾整理01基础03变量06变量的作用域

    一.变量根据所处的位置对应不同的名称 变量处于不同的位置,有不同的名称 名称分别是  字段,属性 参数 局部变量 不同名称的变量,其作用域是不一样的 二.字段,属性,Field 当一个变量被声明在类下 ...

  8. Java知识系统回顾整理01基础03变量05变量命名规则

    一.命名规则 变量命名只能使用字母 .数字. $. _ 变量第一个字符 只能使用: 字母. $. _ 变量第一个字符 不能使用数字 注:_ 是下划线,不是-减号或者-- 破折号 int a= 5; i ...

  9. Java知识系统回顾整理01基础03变量04类型转换

    一.不同类型之间的数据可以互相转换,但是要满足一定的规则 二.数据类型转换规则 转换规则如图所示  精度高的数据类型就像容量大的杯子,可以放更大的数据 精度低的数据类型就像容量小的杯子,只能放更小的数 ...

随机推荐

  1. 27倍性能之旅 - 以大底库全库向量召回为例谈Profiling驱动的性能优化

    问题 Problem kNN(k Nearest Neighbor)定义 给定一个查询向量,按照某个选定的准则(如欧式距离),从底库中选择

  2. 路由策略Routing Policy和策略路由PBR的区别

    这是面试的时候问道的一个问题,这里跟大家分享一下 路由策略(Routing Policy)是为了改变网络流量所经过的途径而修改路由信息的技术: PBR(policy-based-route)是一种依据 ...

  3. shader变体

    unity shader 变种(多重编译 multi_compile) https://www.jianshu.com/p/f34d896dde5d Unity Shader - Making mul ...

  4. MaterialPropertyBlock

    在unity中,有这样一种情形,有许多的物体,都使用了相同的材质球,但是呢,具体的细节又有些微的不同,如果想要些微的改变每一个 网格的颜色,改变 渲染状态是不行的. 这时,就可以使用MaterialP ...

  5. Hihocoder 1116 计算

    这题最开始的时候看到线段树吧,没找到好的做法 想了下既然是乘积和 (-) (--) (---) 在脑子里就是这种线条位于各个位置,然后各种长度代表连续的乘积个数 然后把所有情况累加起来,但是并不好算 ...

  6. Python学习—Anaconda详细 下载、安装与使用,以及如何创建虚拟环境,不仅仅只有安装步骤哦

    上一期我们介绍了Python.Pycharm.Anaconda三者之间的关系以及使用,这一期主要详细介绍如何在Windows上下载和安装工具Anaconda,然后使用其自带的conda管理不同项目的虚 ...

  7. C015:十进制转8进制

    程序: #include "stdafx.h" #include <string.h> int _tmain(int argc, _TCHAR* argv[]) { i ...

  8. Agumaster 增加雪球网爬虫

  9. 两篇好文 清晰地描述bug 技术总监的忠告

    如何清晰的描述一个bug 一个技术总监的忠告 --2020-02-26--

  10. 如何在不使用OleDbCommandBuilder情况下使用OleDbDataAdapter更新Access数据库记录

    我在博客园的博问和微软论坛都曾经请教了这个问题(问题链接),可能我的问题太简单,并没有获得太多解答. 到今天为止,我自己通过查找和摸索,基本把这个问题解决了,还是记录下来,供其他朋友参考. 第一次解决 ...