美文网首页视觉艺术
JAVA开发入门教程:(二)基本数据类型

JAVA开发入门教程:(二)基本数据类型

作者: 只有你只有你 | 来源:发表于2020-05-11 16:51 被阅读0次

    java中有8种基本类型,分别是byte、short、int、long、float、double、boolean、char。

    它们是用来定义和保存数字、单个字符、布尔类型的东西,他们也可以统称为“变量”。

    他们的定义方式是:基本类型名 空格 自定义变量名称 等号 数值。如:int sum = 20;

    定义方式看下面的例子:

    1、新建一个类Test1(或者你自己起名字,以后我不再解释了),并写入以下代码

        public class Test1 {

        public static void main(String[] args) {

        byte b = 3; //范围是-128~127之间。

        short s = -200; //短整型,范围是-32768~32767之间。

        int i = 1000; //整型,范围是负的2的31次方到正的2的31次方减1。

        long l = -999999999; //长整型,范围为负的2的63次方到正的2的63次方减1。

        float f = 6.12f; //浮点型,就是带小数点的数。范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。

        double d = 1234567890.123456d; //双精度型,就是比float的范围更大的带小数点的数。范围在4.9e-324~1.8e308,赋值时必须在数字后加上d或D。

        boolean bool = true; //布尔型,只有true(真)和false(假)两个取值。

        char c = 'A'; //用单引号赋值,只能存一个字符。

        System.out.println(b);

        System.out.println(s);

        System.out.println(i);

        System.out.println(l);

        System.out.println(f);

        System.out.println(d);

        System.out.println(bool);

        System.out.println(c);

        }

        }

    输出:

    现在,你已经学到了一种定义变量的方式,那么,这个有什么用呢?你可以用这个来做一个简单的计算题。

    比如333.22*(992+33333/233)

        public class Test1 {

        public static void main(String[] args) {

        float a = 333.5f;

        int b = 992;

        int c = 1231;

        int d = 2;

        float sum = a * (b + c / d); //定义一个变量sum来接受计算的结果

        System.out.println("计算333.5 * (992 + 1231 / 2)");

        System.out.println(sum); //第一种计算方式,把计算结果先放进sum中,最后打印sum

        System.out.println(a * (b + c / d)); //第2种计算方式,直接在输出的时候计算并打印

        }

        }

    运行之后,打印:

    基本类型的定义和使用方式就是这样简单。

    简单的代码里面包含有不少规则和编译原理:

    1、在上面的代码中,为什么float sum = a * (b + c / d)不建议写为double sum = a * (b + c / d)?

    答:在第一个代码中,你可以看到八种基本类型的赋值范围,这样可以根据你的需要去选择,虽然可以用long或double存1,但是范围越大的类型,占的空间越大,随意需要按需选择。在基本类型中,他们之前是可以转换的,一个算式计算完之后,结果会自动转换成高级别的类型。级别的从高到底为:双精度型(double)>浮点型(float)>长整型(long)>整形(int)>byte。上面的算式中包含了整形(b、c、d)、和浮点型(a),其中级别最高的是float,所以最后计算的结果会自动转换成float,需要用float型 接受。另外,用比float级别更高的double也是可以的,你可以试试。参考文章:https://blog.csdn.net/hjgzj/article/details/51699938

    2、低级类型是可以直接转换成高级类型吗?

    答:首先声明下,基本类型是没有高低级别之分,我说的低级和高级类型, 仅仅是指他们转换的优先级。然后回答这个问题,可以转换,看下面代码

        public class Test1 {

        public static void main(String[] args) {

        int i = 99; //定义一个整形

        long l = 888888888888888888l; //定义一个长整形

        double d = 9999999999999999999999999d; //定义一个双精度型

        float f =3.1415555555555f; //定义一个浮点型

        l = i; //把i赋值给l

        d = i; //把i赋值给d

        f = i; //把i赋值给f

        System.out.println(l);

        System.out.println(d);

        System.out.println(f);

        }

        }

    运行结果:

    不同的类型相互赋值就是一个类型转换的过程。

    3、高级类型是可以直接转换成低级类型吗?

    答:可以的,不过需要显式的加上强转代码。如果你直接按照上面的方法强转,会报错:

    你可以把鼠标放在红叉上查看原因或者点击自动修正代码。

    代码如下:

        public class Test1 {

        public static void main(String[] args) {

        int i = 99; //定义一个整形

        long l = 888888888888888888l; //定义一个长整形

        double d = 4234.1312; //定义一个双精度型

        float f =3.1415555555555f; //定义一个浮点型

        i = (int) l; //把l赋值给i

        System.out.println(i);

        i = (int) d; //把d赋值给i

        System.out.println(i);

        i = (int) f; //把f赋值给i

        System.out.println(i);

        }

        }

    结果如下:

    我们可以看到,强转之后,丢失了精度。

    以上,就是本章的学习内容。

    以下是扩展内容。

    今天写的代码,有很多地方都加了两个斜杠“//”,这种标记叫做“注释”,他是用来解释这行代码 是什么意思的,在程序运行中不会起任何作用,仅仅是给人看的,为了方便看懂代码而写,注释可以写在程序的任何注释。一个程序员应该养成写注释的好习惯,比如一段代码逻辑很复杂,如果不写注释,很可能你明天再看这段代码就不知道是什么意思了。注释分两种,一种叫单行注释,一种叫多行注释,单行注释从这一行的“//”开始,到这一行结束,这部分代码不生效,多行注视从“/**”开始到“*/”结束,这部分代码不生效:

        /**

        * 这是一个测试类

        */

        //类上也可以单行注释

        public class Test1 {

        /**

        * 这是一个main方法,程序从这里开始

        * yoyoyo

        * 我是多行注视哟

        */

        //方法上也可以单行注释

        public static void main(String[] args) {

        //定义一个变量a(单行注释)

        int a = 0;

        //System.out.println(a);(单行注释)

        System.out.println(a);

        }

        }

    结果只输出了一个0,被注释掉的代码不会运行

    eclips小技巧:

    单行注释:把鼠标点击到某一行(或者选中多行),Ctrl+/    重复操作会取消注释,一般用键盘右边的“Ctrl”和键盘右侧Shift左边的“/”会手感好些。

    多行注视:输入“/**”,然后回车,eclips会自动补全注释代码。

    快捷提示:Alt+/    例如你输入了“flo”然后Alt+/之后会出现一个选择列表,你用键盘的↑↓去选择一个你想要的,然后回车确认。

    你是不是觉得每次输入System.out.println()都很麻烦,其实通过快捷键就很容易,你可以输入syso之后Alt+/,会自动补全后面的。

    作业:

    1、定义a、b、c三个整形变量,使得a=99999,b=9999999,c=99999999,打印出这三个的乘积,并分析其结果。

    2、打印System.out.println(0.1+0.1+0.1); 分析结果的原因。

    3、练习int、long、float、double之间的相互转换。

    4、练习上面提高的eclips小技巧。

    以上有不懂的,学会使用百度来解决问题。

    上节作业答案:

        public class HelloWorld {

        public static void main(String[] args) {

        System.out.print("这是斜杠:/\n这是反斜杠:\\\n这是两个反斜杠\\\\\n我要空一行\n\n\"双引号哦\"");

        }

        }

    \n表示输出一个换行、\\表示输出一个\,\"表示输出一个双引号。主要别把斜杠(/)和反斜杠(\)弄混了

    ————————————————

    版权声明:本文为CSDN博主「我纯洁全身都纯洁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

    原文链接:https://blog.csdn.net/hjgzj/java/article/details/79668897

    相关文章

      网友评论

        本文标题:JAVA开发入门教程:(二)基本数据类型

        本文链接:https://www.haomeiwen.com/subject/dhzunhtx.html