java 中的常量[亲测有效] -金沙1005

java 中的常量[亲测有效]​​。


活动地址:

常量

常量:在程序运行期间,固定不变的量。

常量的分类:
1.字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:“abc”、“hello”、“123”。
2.整数常量:直接写上数字,没有小数点。例如:100,200,0,-250。
3.浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0。
4.字符常量:凡是用单引号引起来的单个字符,就是字符常量。例如:‘a’、‘b’、‘9’、‘中’。
5.布尔常量:只有两种取值。true、false。
6.空常量:null。代表没有任何数据。

注意:
1.两个单引号中间必须有且仅有一个字符,没有不行。
2.两个单引号中间必须有且仅有一个字符,有两个不行。
3.空常量不能直接用来打印输出。

例如:system.out.println(’’);这是错误的。
例如:syetem.out.println(‘ab’);这是错误的。
例如:system.out.println(nulll);这是错误的。

数据类型

数据类型分为基本数据类型和引用数据类型。

基本数据类型:四类八种。
    整数型    byte short int long
    浮点型    float double
    字符型    char
    布尔型    boolean

简要提一下引用数据类型:字符串、数组、类、接口、lambda。

如下图所示。

在这里插入图片描述

取值范围与内存占用不相关,就比如说图中的long占用8个字节而单精度浮点数float只占用四个字节,但是float的取值范围却比long的取值范围大很多,这是因为float采用的是科学计数法计算省空间。

注意事项:
1.字符串不是基本类型,而是引用类型。
2.浮点型可能只是一个近似值,并非精确值。
3.数据范围与字节数不一定相关。例如:float数据范围比long更加广泛,但是float是4字节,long是8字节。
4.浮点数当中默认类型是double。如果一定要使用float类型,需要加上一个后缀f。
如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀l。大小写后缀都可以,推荐使用大写字母后缀。
例如:system.out.println(100l);

变量

变量:程序运行期间,内容可以发生改变的量。

创建一个变量并且使用的格式:数据类型 变量名称; 变量名称 = 数据值;

一步到位的格式:数据类型 变量名称 = 数据值;//在创建一个变量的同时,立刻放入指定的数据值。

用long 和 float时要加后缀。例如:long num = 30000000000l; float num = 2.5f;

数据类型转换

当数据类型不一样时,将会发生数据类型转换。

数据类型转换分为两类:

  自动类型转换(隐式)
    1.特点:代码不需要进行特殊处理,自动完成。
    2.规则:数据范围从小到大。

  强制类型转换(显式)
    1.特点:代码需要进行特殊的格式处理,不能自动完成。
    2.格式:范围小的数据类型 范围小的变量名 = (范围小的类型)原本范围大的数据; 例如:int num = (int) 100l;

注意事项:
    1.强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。如图。

在这里插入图片描述

    2.byte/short/char这三种类型都可以发生数学运算,例如加法“ ”.
    3.byte/short/char这三种类型在运算的时候,都会被首先提升为int类型,然后在计算。
    4.boolean类型不能发生数据类型转换

数据溢出:数据范围大的数据类型转换为数据范围小的数据类型,装不下,数据溢出了。
精度损失:就是把有一部分数据的精度给舍掉了。例如:int num = (int) 3.99;输出结果为3。

例如:char ch = ‘a’;//这是一个字符变量,里面是大写字母a
           system.out.println(ch 1);//66,也就是大写字母a被当成65处理。
计算机的底层会用一个数字(二进制)来代表字符a,就是65。
一旦char类型进行了数学运算,那么字符就会按照一定的规则翻译成为一个数字。

例如:
byte num1 = 40;
byte num2 = 50;
//byte byte => int int => int
byte result1 = num1 num2;
system.out.println(result1);
编译器报错,因为byte byte运算时默认会提升为int int 应该用int去接收。
int result1 = num1 num2;

byte short也是一样。举一个正确的例子:
short num1 = 60;
byte num2 = 40;
//byte short => int int => int
//int强制类型转换为short:注意必须保证逻辑上真实大小本来就没有超过short范围,否则会发生数据溢出
short result = (short) (num1 num2);
system.out.println(result);//100

ascii码表

数字和字符的对照关系表(编码表):
ascii码表:american standard code for information interchange,美国信息交换标准代码。
unicode码表:万国码。也是数字和符号的对照关系,开头0-127部分和ascii完全一样,但是从128开始包含有更多的字符。

在这里插入图片描述

记住三个:48代表0,65代表a,97代表a。其余的查表即可。

例如:
char zifu1 = ‘1’;
system.out.println(zifu1 0);//49

char zifu2 = ‘a’;

char zifu3 = ‘c’;
int num = zifu3;
//左侧是int类型,右边是char类型,char => int ,确实是从小到大发生了自动类型转换
system.out.println(num);//99

char zifu4 = ‘中’;
system.out.println(zifu4 0);//20013

js555888金沙老品牌的版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由思创斯整理,转载请注明出处:https://ispacesoft.com/141762.html

(0)

相关推荐

  • 【备考05组02号】第四届蓝桥杯java组b组省赛题解「终于解决」写在前面:博客推行版本更新,成果积累制度,已经写过的博客还会再次更新,不断地琢磨,高质量高数量都是要追求的,工匠精神是学习必不可少的精神。因此,大家有何建议欢迎在评论区踊跃发言,你们的支持是我最大的动

  • java链表的常用算法原理链表算法:1.给定一个链表,但是不知道链表大小,要求遍历一次,找到链表的中间位置方法:快慢指针法定义两个指针都指向head节点,fast指针每次移动两步,slow指针每次移动一步,当fast不能再往后走时,slow此时指向的是中间值代码://找到链表的中间值 publicnodefindmid(){ //定义快指针fast nodefast=head; //定义慢指针slow nodeslow=head; while((fas..

  • html5自动生成目录,javascript:自动生成博文目录导航感谢孤傲苍狼分享了自动生成博文目录的方法,本文仅作存档使用。图1:效果预览css样式#tocbar{font-size:12px;text-align:left;position:fixed;auto;height:auto;top:50px;right:0px;/*离页面顶部与右侧的距离*/}#tocbartab{float:left;30px;border:1px…

  • java验证码图片显示不出来_javaweb注册页面代码2019独角兽企业重金招聘python工程师标准>>>…

  • 502 java_502 bad gateway重现在部署一套新的环境的时候,内部集群服务之间调用采用http协议,通过nginx进行跳转调用,当内部服务1调用内部服务2的时候报错,堆栈如下:502badgateway502badgatewaynginxatfeign.feignexception.errorstatus(feignexception.java:62)~[feign-core-9.3.1.jar:?]atfeign…

  • file java mkdirs_java file mkdirs()方法javafilemkdirs()方法java.io.file.mkdirs()创建此抽象路径名,包括必要的和不存在的父目录的目录。1语法publicbooleanmkdirs()2参数无3返回值如果创建目录所有必需的父目录方法返回true;否则返回false。4示例packagecom.yiidian;/***一点教程网:http://www.yiidian.com*//…

    2022年12月13日
  • java常用类之calendar类「终于解决」java常用类之calendar类calendar类提供了获取或者设置各种日历的字段的方法。构造方法protectedcalendar():由于修饰符是prodected;所以无法直接创建该对象其他方法方法名说明staticcalendargetinstance()使用默认时区或区域获取日历voidset(intyear,intmonth,intdate,inthourofday,intminute,intsecond)设置日历的时分秒

  • javabean详解[通俗易懂]一、概述javabean是一种可重用的java组件,它可以被applet、servlet、sp等java应用程序调用.也可以可视化地被java开发工具使用。它包含属性(properties)、方法(methods)、事件(events)等特性。***javabean是一种软件组件模型,就跟activex控件一样,它们提供已知的功能,可以轻松重用并集成到应用程序中的java类。***任何可以用j…

    2022年12月13日

发表回复

您的电子邮箱地址不会被公开。

联系金沙1005

关注“java架构师必看”公众号

回复4,添加站长微信。

附言:ispacesoft.com网而来。

关注微信
网站地图