java语法基础

常量

  • 常量 : 在程序执行过程中,其值不能改变

Java中常量的分类

  • 字面值常量
  • 自定义常量
字面值常量的分类
  • 字符串常量 用双引号括起来的内容
  • 整数常量 所有整数
  • 小数常量 所有小数
  • 字符常量 用单引号引起来的内容 里面只能是单个字符
  • 布尔常量 true 和 false
  • 空常量 null

进制 (scale)

  • 二进制 以0b开头
  • 八进制 以0开头
  • 十六进制 0x开头

变量

  • java 是强类型语言,对每一种数据都定义了明确的具体的数据类型,在内存中分配了不同大小的内存空间

  • 基本数据类型

  • 引用数据类型

    • 基本数据类型
    1. 整数型
  • byte 占一个字节 -128 ~ 127

  • short 占两个字节 -215~215-1

  • int 占四个字节 -231~231-1

  • long 占八个字节 -263~263-1

    1. 浮点型
  • float 占四个字节

  • double 占八个字节

    1. 字符型
  • char 占两个字节 0~65535

    1. 布尔型
  • boolean

    • boolean 理论上占八分之一个字节
      但是java中boolean没有明确说明它的大小

注意

    • 小数默认是double 若是float 需要在数后面加一个f
  • long类型后面最好加一个L

  • 局部变量在使用前必须赋值

  • 强制转换
    比如

int t ;
byte b;
b = (byte)(t+b);
// 整型t去掉前三个八位 变为byte型进行运算
// 向下强制转换可能会损失精度

原码 反码 补码

  • 计算机实际运算的时候都是以补码形式进行运算的
  • 原码 就是二进制表示法 最高位是符号位 0表示正 1表示负

  • 反码 正数原返补都相同 负数反码除了符号位逐位取反

  • 补码 正数原返补都相同 负数补码在反码末位上加1

运算只取8 位 进位超出的不要

image.png

测试题

检查下面的程序是否有问题

byte b1 = 3;
byte b2 = 4;
byte b3 = b1+b2;
byte b4 = 3 + 4;

编译报错

  • 两个方面
  1. 整数默认类型是int 浮点数默认是double byte short char 都会提升为int进行计算 两个int相加也是int

  2. b1 b2 是两个变量 变量存储的值是变化的 编译的时候无法判断里面的值 (只有运行的时候才可以知道多大 )相加有可能超过byte的取值范围

b4为啥不报错

java编译器有常量优化机制 在编译过程中就能把3+4取到算出来 在byte范围内就可以直接赋值过去

long 占 8 位 float占4位 float 和long 谁大谁小 ?

float 比 long 能存的数大很多(不考虑小数精度啥的 单纯比较大小)

字符串

任何数据类型用 + 与字符串相连接都会产生新字符串

字符

java中的char 0~65535
java中的charUnicode编码 占用两个字节 一个中文汉字也是两个字节 所以可以存储一个中文汉字.

测试题

问哪行报错

short a;
a=a+1;
short b;
b+=1;

解答:
第二行 会报丢失精度的错误
b+=1隐含了强制转换 // 相当于 b=(short)(b+1);

关系运算符

得到true 或者 false

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343

推荐阅读更多精彩内容

  • 1. 关键字 1.1 关键字概述 被Java语言赋予特定含义的单词 1.2 关键字特点 组成关键字的字母全部小写 ...
    JackChen1024阅读 608评论 0 2
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,153评论 1 44
  • 1.String StringBuffer StringBuilder 区别? String 字符串常量,Stri...
    irckwk1阅读 529评论 0 0
  • 每天躺下就睡着,不是不说,只是没有人可以说,去年还在学校,听到噩耗,感觉失去了所有,失去了自己,如今每天假装着快乐...
    殊業阅读 182评论 0 0
  • 我是夏程。 从我有记忆以来,我就和弟弟一起生活在福利院里,我和夏钦从小相依为命,形影不离。承受过生活的不公,承受过...
    吴歌月阅读 382评论 0 3