java变量值教程(原创0基础Java学习高手请绕行)

昨天讲到了基本数据类型和所占的字节,今天来讲一下变量的赋值和运算规则。


以byte类型为例,上节讲到byte类型占1个字节(即8位),我们可以将8位理解为8跟电路,电路只有开和闭两种状态,那么一跟电路可以表示两种状态,那8跟电路就可以表示2^8种状态。那么在计算机里就可以表示2的8次方个数,因为从0开始,所以可以表示0-256之间的数,又因为计算机还要表示负数,所以byte类型的变量表示的范围是-2^7到2^7-1,也就是-128到127,为什么没有对称呢?是因为有0存在。那么照这么来算的话,我们很容易就能算出其它整型所能表示的范围,注意是整型。虽然float类型是4个字节,long类型是8个字节,但实际上float能装的数要比long还要大。

这里补充一个知识点,变量的命名规则:变量的名字可以以字母、下划线、$开头,不能以数字开头,后面跟字母、下划线、$、数字都可以,变量名对大小写敏感,无长度限制。

我们学习java语言之前,要对自己的水平有一个认识,要知道我们目前学习的在哪个阶段。

java变量值教程(原创0基础Java学习高手请绕行)(1)

这是Java学习的几个阶段,一般到中级找工作就不成问题了,我尽量讲到高级

目前我们在计算机基础的数据类型阶段,当然学习不可能一蹴而就,这也许是一段时间,需要自己的坚持。


=”在计算机语言中就是赋值的意思,例如: int m=10;计算机碰到这句话要做的就是先在内存中找到连续的4个字节,然后取名为m,再把10放进去。

根据之前讲的知识,来判断一下对错。1、byte n=128; 2、char m=‘hh’; 3、float x=3.5; 4、int w=256;(答案在文章最后)

体会一下,byte类型的一个值能不能放在int类型中呢?byte是1个字节最大能表示2^7,int是4个字节也就是32位,最大能表示2^31,答案是当然可以放得下,所以就会有下面这种情况了。

java变量值教程(原创0基础Java学习高手请绕行)(2)

图片第5行是一个接口方法,第9行是输出语句,所有红色的字为关键字,所有的内容都会慢慢讲

(使用Eclipse的好处就是他可以自己写代码,比如第五行,你只需要输入main,然后按Alt ?两个键,然后回车,这个main方法就自动写好了;第九行你只需要输入syso,按Alt ?,回车这个输出语句就写好了,要注意的是内容要写在{ }里面)

那么基本数据类型四类八种的大小关系是什么样的呢?double>float>long>int>short>byte 因为boolean的值是真和假,char的值是‘ ’,所以先不往顺序里面排。这个大小关系的意思就是,后面一个类型的值可以赋值给它前面的那个类型。当然,如果你非要吧大类型 给小类型也是可以的,这就要用到强转,不过目前不建议这么做,转不好会出错。给大家看一下强转怎么做。

java变量值教程(原创0基础Java学习高手请绕行)(3)

强转就是在变量前面加上小类型的类型名称,并用括号括起来


接下来讲今天第二个知识点,运算,变量的运算分为很多种,有算数运算、比较运算、逻辑运算、移位运算、目运算。我们慢慢来。

首先算数运算,也就是加减乘除模,即 - * / %,(这个百分号就是模运算符),加减乘除很简单,

java变量值教程(原创0基础Java学习高手请绕行)(4)

模运算就是取余,如图m%x,就是7除以2的余数,结果为1

然后是比较运算,比较运算符有 >、<、>=、<=、==、!=,分别是大于,小于,大于等于,小于等于,等于,不等于。要注意的是比较运算的结果是一个布尔类型的值,即 boolean x =3>5; 当然这样的话输出x就是个false。出几道题考你一下,5、boolean q=3!=9; 6、boolean w=8==8; 7、boolean e=7>=7; 8、boolean r=4==5;

今天的内容很简单,下面就来一个有点难度的,逻辑运算。逻辑运算符有&&、||、! ,分别叫与、或、非,(&、|、~也叫与或非,一会会讲他们之间的区别),非(!)很好理解,非真就是假,非假就是真。下面重点讲一下与(&&)和或(||)。又是体会一下,假如仓库大门上有一把锁,这把锁需要两个钥匙同时插进去才能打开大门,而这两把钥匙分别在你和我的手中,所以要想进仓库取东西必须我与你一块去才可以,这就是与(&&),少一个都不行,也就是两边都是真,结果才是真。或(||)就相当于一把锁(这个锁只要一把钥匙就能打开)有两个钥匙,咱俩一人一把,你或我随便去一个就可以打开大门,或(||)就是两边有一个真结果就是真。给你个例子看一下。

java变量值教程(原创0基础Java学习高手请绕行)(5)

逻辑运算的结果也是布尔类型的值

接下来就讲一下&&、||、!和&、|、~的区别,在我们看来功能上是一样的,区别就在于在计算机看来是不一样的。举个例子: boolean m=true||false; 当计算机碰到这句话时,当计算机走到true时他已经知道结果就是true,计算机就不在向下执行了。而对于:boolean n=true|false; 来说,计算机走到true时虽然已经知道结果为true,但他依然继续往下执行。就这么点区别,正因为&、|、~的这一点傻傻的执着,使他可以进行位运算,感兴趣的同学可以查一下位运算,这里先暂时不讲了。

好了,今天的内容就先到这里,下面公布一下答案:1、错误:byte类型最大表示到127;2、错误:char类型单引号中只能有一个字符;3、错误:float类型要加f,不加f的话是double类型,float类型成不下double类型的值;4、正确;5、true;6、true;7、true;8、false;

java变量值教程(原创0基础Java学习高手请绕行)(6)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页