how2j.cn


工具版本兼容问题
创建一个Hero对象会用到new关键字,但是给一个基本类型变量赋值却不是用new. 因为基本类型是Java语言里的一种内置的特殊数据类型,并不是某个类的对象。
给基本类型的变量赋值的方式叫做 字面值,如下所例:
float hp = 313f;
int armor = 24;

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



8分57秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)



示例 1 : 整数字面值   
示例 2 : 浮点数字面值   
示例 3 : 字符和字符串字面值   
示例 4 : 练习-字面值   
示例 5 : 答案-字面值   

示例 1 :

整数字面值

当以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); } }
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);
    }
}
示例 2 :

浮点数字面值

当以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 } }
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
	}
}
示例 3 :

字符和字符串字面值

字符的字面值放在单引号中

字符串的字面值放在双引号中

需要注意的是,\表示转义,比如需要表示制表符,回车换行,双引号等就需要用 \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 = '\\'; //反斜杠 } }
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 = '\\'; //反斜杠
		
	}
}
示例 4 :

练习-字面值

Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
定义如下变量,然后为每种不同类型的变量赋予合法的字面值
byte b;
short s;
int i;
long l;
float f;
double d;
char c;
String str;

比如

b = 12;


如果写成,就会报错,是非法的

b= 250;
示例 5 :

答案-字面值

在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

5分44秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)


以下是答案,仅供参考
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 ="达成了生命中的大和谐"; } }
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 ="达成了生命中的大和谐";
    }
}


HOW2J公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2018-10-17 binVal定义错误
萌新丶
为什么二进制里有b?








答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2018-10-12 加了f有什么用
aelax



在double类型变量后面加一个f他还是判定为double类型
public class Main {
    public static void main(String[] args) {

Main  t = new Main();

      double b1 = 1f;
       

        System.out.println("b1的类型是:" + t.judgeType(b1));
       
    }

    public String judgeType(Object temp) {
        if (temp instanceof Double) {
            return "是double类型";
        } else if (temp instanceof Float) {
            return "是float类型";
        } else {
            return "是其他类型";
        }
    }
}

							






答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2018-10-06 交作业啦啦啦阿
2018-09-30 交作业
2018-09-30 交作业
2018-09-26 为啥返回值不一样?求指教
2018-09-03 交作业
2018-08-23 交作业咯
2018-08-23 交作业咯
2018-08-22 交作业-4
2018-08-08 Home Work
2018-07-30 交作业
2018-07-19 交作业
2018-07-18 作业汇报
2018-07-17 交作业
2018-07-13 交作业
2018-07-13 交作业
2018-07-05 交作业
2018-07-03 写作业
2018-07-02 double 保留小数
2018-05-02 交作业
2018-04-25 作业
2018-04-25 “byte,short,int和long的值都可以通过int类型的字面值来创建”是什么意思?
2018-04-25 “byte,short,int和long的值都可以通过int类型的字面值来创建”是什么意思?
2018-04-12 交作业
2018-03-29 变量赋值字面值学习
2018-03-13 交作业-基础-变量-字面值
2018-03-08 字面值与常量是什么关系?
2018-03-06 交作业
2018-02-28 交作业
2017-12-04 交作业
2017-12-02 假如为了省事把数字都用double定义,字符都用String定义,会有什么后果?
2017-12-02 如果为了省事把数字都用double定义,字符都用String定义,会有什么后果?
2017-11-10 float hp = 313;
2017-11-10 逻辑混乱
2017-11-06 使用制表符后运行结果和站长的不一样
2017-10-28 如果字面值数字默认是int的话,那short i = 5 是不是实际上已经被系统执行成short i = (short)5 还是 这里的字面值已经变成了short的了
2017-10-28 如果字面值数字默认是int的话,那short i = 5 是不是实际上已经被系统执行成short i = (short)5 ?
2017-07-10 使用char类型定义汉字会报错
2017-05-01 如何输出八进制?
2016-04-16 2进制
2016-04-16 不懂int可以创建16进制跟2进制的意思
2016-02-28 浮点数用e表示




提问之前请登陆
关于 JAVA 基础-变量-字面值 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 902680467
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: http://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图