目录

常量

不同进制转换

数据类型

使用变量注意事项


常量

l常量概述

•在程序执行的过程中其值不可以发生改变

lJava中常量分类

•字面值常量

•自定义常量(面向对象部分讲)

/*常量:在程序执行过程中,其值不发生改变的量。分类:A:字面值常量B:自定义常量(后面讲)字面值常量A:字符串常量  用双引号括起来的内容。举例:"hello","world","HelloWorld"B:整数常量   所有的整数举例:100,200C:小数常量    所有的小数举例:10.23,110.11D:字符常量   用单引号括起来的内容举例:'a','A','0'错误的:'ab'E:布尔常量    比较特殊举例:true,falseF:空常量   后面讲举例:null
*/
class ConstantDemo {public static void main(String[] args) {//字符串常量的输出System.out.println("hello");//整数常量的输出System.out.println(100);//小数常量的输出System.out.println(100.10);//字符常量的输出System.out.println('a');System.out.println('A');System.out.println('0');//这个是有问题的//System.out.println('ab');//布尔常量的输出System.out.println(true);System.out.println(false);}
}

不同进制转换

public class JavaLearn {public static void main(String[] args){System.out.print("It is not what is outside, " +"but what is inside that counts.\n");System.out.println(100); //十进制System.out.println(0b100); //二进制System.out.println(0100); //八进制System.out.println(0x100); //十六进制}}

1:得到下面数据的十进制值:
0b10101
    =1*2^4 + 1*2^2 + 1*2^0
    =16 + 4 + 1
    =21

0123
    =1*8^2 + 2*8^1 + 3*8^0
    =64 + 16 + 3
    =83
0x3c
    =3*16^1 + c*16^0
    =48 + 12
    =60
    
2:得到下面数据的二进制,十进制,十六进制
52分别得到二进制,十进制,十六进制

得到二进制:
    52 / 2 = 26        0
    26 / 2 = 13        0
    13 / 2 = 6      1
    6  / 2 = 3      0
    3  / 2 = 1      1
    1  / 2 = 0      1
    
    0b110100
    
得到八进制:
    52 / 8 = 6        4
    6  / 8 = 0      6
    
    064
    
得到十六进制:
    52 / 16 = 3        4
    3  / 16 = 0     3
    
    0x34
    
3:有符号数据表示法的练习
    A:已知某数X的原码为10110100B,试求X的补码和反码。
        
            符号位        数值位
        
    原码:    1            0110100
    
    反码:    1            1001011
    
    补码:    1            1001100
    
    B:已知某数X的补码11101110B,试求其原码。
    
            符号位        数值位
            
    补码:    1            1101110
    
    反码:    1            1101101
    
    原码:    1            0010010

数据类型

Java 各整数类型有固定的表数范围和字段长度,其不受具体操作系统的影响,以保证Java程序的可移植性。

Java语言的整型常量默认为int型,声明long型常量可以后加‘ l ’或‘ L ’ ,如:

int i1 = 600; //正确     long l1 = 88888888888L; //必须加l否则会出错

与整数类型类似,Java浮点类型有固定的表数范围和字段长度,不受平台影响。

Java 浮点类型常量有两种表示形式

十进制数形式,如: 3.14       314.0

科学记数法形式,如 3.14e2 3.14*10^2

Java 浮点型常量默认为 double 型,如要声明一个常量为 float 型,则需在数字后面加 f 或 F ,如:

double d = 12345.6; //正确   float f = 12.3f; //必须加f否则会出错

char 型数据用来表示通常意义上的“字符”

字符常量为用单引号括起来的单个字符,例如:char ch1= 'a'; char ch2='中';

Java 字符采用 Unicode 编码,每个字符占两个字节,因而可用十六进制编码形式表示。注:Unicode是全球语言统一编码

boolean 类型适于逻辑运算,一般用于程序流程控制 。

boolean 类型数据只允许取值 true 或 false ,不可以 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。

/*数据类型:Java是一种强类型的语言,针对每一种数据都定义了明确的数据类型。数据类型分类:A:基本数据类型B:引用数据类型(类,接口,数值)基本数据类型:4类8种A:整数         占用字节数byte           1short          2int                4long           8B:浮点数float             4double             8C:字符char           2D:布尔boolean            1注意:整数默认是int类型浮点数默认是double类型。长整型后缀用L或者l标记。建议使用L。单精度浮点数用F或者f标记。建议使用F。
*/
class DataTypeDemo {public static void main(String[] args) {//定义变量的格式://数据类型 变量名 = 初始化值;//定义一个字节变量byte b = 10;System.out.println(10);System.out.println(b);//定义一个短整型变量short s = 100;System.out.println(s);//定义一个整型变量int i = 1000;System.out.println(i);//超过了int的范围//int j = 1000000000000;long j = 1000000000000L;//long j = 100L;System.out.println(j);//定义浮点数据变量float f = 12.345F;System.out.println(f);double d = 12.345;System.out.println(d);//定义字符变量char ch = 'a';System.out.println(ch);//定义布尔变量boolean flag = true;System.out.println(flag);}
}

使用变量注意事项

/*使用变量的时候要注意的问题:A:作用域变量定义在哪个大括号内,它就在这个大括号内有效。并且,在同一个大括号内不能同时定义同名的变量。B:初始化值没有初始化值的变量不能直接使用。你只要在使用前给值就行,不一定非要在定义的时候立即给值。推荐在定义的时候给值。定义变量的格式:a:数据类型 变量名 = 初始化值;b:数据类型 变量名;变量名 = 初始化值;C:在一行上建议只定义一个变量可以定义多个,但是不建议
*/
class DataTypeDemo2 {public static void main(String[] args) {//定义变量int x = 100;//错误,不能有同名的//int x = 200;//定义变量必须给值//int y;//System.out.println(y);int z;z = 100;System.out.println(z);//在一行上定义多个变量//int a = 10; int b = 20; int c  = 30;//上面的写法可以,但是不建议。int a = 10; int b = 20; int c  = 30;//int d, e;//d = 40;//e = 50;//int f,int g; //错误//int h; int i; //正确}
}
/*+是一个运算符(我们等会讲解)。做加法运算的。一般来说,我们在运算的时候,要求参与运算的数据类型必须一致。注意:boolean类型不能转换为其他的数据类型默认转换(从小到大的转换)A:byte,short,char—int—long—float—doubleB:byte,short,char相互之间不转换,他们参与运算首先转换为int类型
*/
class DataTypeDemo3 {public static void main(String[] args) {//直接输出的方式做加法//System.out.println(3 + 4);//两个int类型做加法int x = 3;int y = 4;int z = x + y;System.out.println(z);//定义一个byte类型,一个int类型,做加法byte a = 3;int b = 4;System.out.println(a + b);//可能损失精度//byte c =  a + b;int c = a + b;System.out.println(c);}
}

     byte a = 3;int b = 4;//这个肯定没有问题//int c = a + b;//byte c = 7;//这个是有问题的//byte c = a + b; //用强制类型转换改进byte c = (byte) (a + b);System.out.println(c);
/*思考题1:请问下面这个有没有问题double d = 12.345;float f = d;思考题2:看看下面两个定义有没有区别呢?float f1 = (float)12.345;float f2 = 12.345f;f1其实是通过一个double类型转换过来的。而f2本身就是一个float类型。
*/
class DataTypeDemo5 {public static void main(String[] args) {//把double赋值给float,加了强制类型转换double d = 12.345;float f = (float)d;//看看下面两个定义有没有区别呢?float f1 = (float)12.345;float f2 = 12.345F;}
}
/*byte b = 130;有没有问题?如果我想让赋值正确,可以怎么做?结果是多少呢?练习:byte b = (byte)300;
*/
class DataTypeDemo7 {public static void main(String[] args) {//因为byte的范围是:-128到127。//而130不在此范围内,所以报错。//byte b = 130; //我们可以使用强制类型转换byte b = (byte) 130;//结果是多少呢?System.out.println(b);}
}
/*分析过程:我们要想知道结果是什么,就应该知道是如何进行计算的。而我们又知道计算机中数据的运算都是补码进行的。而要得到补码,首先要计算出数据的二进制。A:获取130这个数据的二进制。00000000 00000000 00000000 10000010这是130的原码,也是反码,还是补码。B:做截取操作,截成byte类型的了。10000010 这个结果是补码。C:已知补码求原码。符号位       数值位补码:   1           0000010反码:   1           0000001原码:   1           1111110
*/
/*看程序写结果通过字符和一个整数相加,我们给出一张表:ASCII码表。通过看完这张表以后,我们要记住三个值:'a'     97'A'     65'0'     48
*/
class DataTypeDemo8 {public static void main(String[] args) {//直接输出一个字符System.out.println('a'); //a//输出一个字符和一个整数做加法System.out.println('a'+1); //98}
}
/*看程序写结果字符串数据和其他数据做+,结果是字符串类型。这里的+不是加法运算,而是字符串连接符。
*/
class DataTypeDemo9 {public static void main(String[] args) {System.out.println("hello"+'a'+1); //helloa1System.out.println('a'+1+"hello"); //98helloSystem.out.println("5+5="+5+5); //5+5=55System.out.println(5+5+"=5+5"); //10=5+5}
}

传智播客Java常量进制转换数据类型相关推荐

  1. 成都传智播客Java培训

    成都传智播客Java培训,严格按照北京传智播客的教育模式,为西南IT行业培养了许多优秀的软件开发工程师. 我们有专为0基础.或者基础不够硬的学员开设的Java基础与加强班,让你轻轻松松跨进Java的世 ...

  2. 传智播客JAVA培训20100524SPRING SECURITY

    传智播客JAVA培训20100524SPRING SECURITY 这两天反反复复的看了佟刚老师的教育办公管理系统的项目视频,真是感觉到该老师真是强大,讲的项目非常有技术含量,虽然到现在我都还是半知半 ...

  3. java期中考试答案传智播客,传智播客java考试习题3.docx

    传智播客java考试习题3.docx 第三次作业 1.jar命令的()参数可以创建归档文件1分换题 o A.c o B.v o C.f o D.x 参考答案A 答案说明c参数,创建归档文件 2.下列选 ...

  4. 传智播客java测试题_传智播客Java基础综合测试题

    传智播客Java基础综合测试题 传智播客Java基础综合测试题 第一关 1.动手完成 Java 开发包的安装,并设置环境变量 Path . 2.编写一个程序,要求程序运行后在屏幕上输出: ****** ...

  5. java就业班学什么呀_传智播客JAVA就业班学习心得

    传智播客JAVA就业班学习心得 4月26日CVS---4月27日UML 连续两天状态很是不好,上课总是不能够集中精神.不知为什么听这两天课的时候精神很涣散,也不知道自己在想什么,一整天的课,似听非听的 ...

  6. 参加口碑最好的广州传智播客Java就业培训班吧

    参加口碑最好的广州传智播客Java就业培训班吧 广州传智播客Java培训课程与时俱进性与科学专业性,为广大学子省去了后顾之忧,其中JAVAEE+android3G/4G培训课程更是以科学的体系为支撑, ...

  7. 传智java测试题答案_传智播客Java基础第一阶段习题

    关于java程序员面试的经典题目 传智播客Java基础第一阶段习题 一.单项选择题 1.Java源文件和编译后的文件扩展名分别为( ) A..class和 .java B..java和 .class ...

  8. 成都传智播客java培训中心

    "21世纪什么最重要.人才!" "IT世界里,人才是最宝贵的财富!" 成都传智播客java培训中心,自成立以来!以其雄厚的师资.真实的项目推动,帮助广大的学子走 ...

  9. 传智播客java就业班入学测试题(自测+答案)

    ---------------------- ASP.Net+Android+IOS开发..Net培训.期待与您交流! ---------------------- 传智播客java就业班入学测试题 ...

  10. 广州Java培训机构之广州传智播客Java课程

    广州Java培训机构之广州传智播客Java课程      广州传智播客Java课程,全国领先的Java课程,一群敢于创新,勇于创新的精英老师.广州传智播客Java学科,从开设学科以来,秉承着张孝祥老师 ...

最新文章

  1. (七)webStorage使用实例——webStorage作为简易数据库来使用
  2. 【EOJ Monthly 2018.10 - A】oxx 的小姐姐们(模拟,水题,填充矩阵,输出格式有坑)
  3. 设计公共API的六个注意事项
  4. 在ubuntu16.04安装hadoop集群时ssh不成功
  5. bat 文件 服务器,bat文件做成服务器
  6. 调音台docker教程_Docker菜鸟教程 - Docker入门教程 - Docker基础教程 - 动力节点
  7. Java内存分配及值、引用的传递
  8. leetcode#246 中心对称数
  9. linux服务器硬盘检测,Linux服务器硬盘坏道检测
  10. format的几种用法
  11. 2019信用卡权益总结之十三:延误险
  12. Task9 文件与文件系统
  13. 【实用教程】本地blast使用及简单python脚本辅助
  14. VMware:在部分链上无法执行所调用的函数,请打开父虚拟磁
  15. Browsersandbox浏览器兼容性测试工具介绍
  16. 【Docker 那些事儿】容器监控系统,来自Docker的暴击
  17. 当老人用保健品填补精神需求的时候,我们该谴责谁?
  18. 创龙TI TMS320C6678 DSP + Xilinx Kintex-7 FPGA的温度传感器、B2B连接器
  19. 【HTCVR】VRTK插件案例分析之0011~020
  20. 海思USB2.0、USB3.0 Device UVC规格热插拔会不识别

热门文章

  1. oracle注释 kole_t2u,oracle4
  2. 写python程序最佳实践_Python后台程序打包最佳实践
  3. linux通过usb给windows,如何从Linux创建Windows USB安装程序 | MOS86
  4. 竞赛成绩管理系统用c语言编写,学生成绩管理系统代码(c语言编写).doc
  5. python编写agent_python实现Agent守护进程
  6. python 窗口更新_pythontkinter更新文本窗口
  7. c语言形式参数若为b 4,4月全国计算机等级二级C笔试考试题目
  8. easyui---tree拖拽同步到数据库
  9. 20172304 《程序设计与数据结构》 第一周学习总结
  10. 一个合理的生产环境的 Web 应用程序应该是什么样子的