首页 > 编程语言 > 详细

Java基础(上)

时间:2020-11-16 09:43:10      阅读:23      评论:0      收藏:0      [点我收藏+]

Java基础

注释

public class Hello {
    public static void main(String[] args) {
        //单行注释
        
        
        
        /*
        多行注释
         */
        
        
        
        /**
         * 文档注释
         */
        System.out.println("Hello,world");
    }
}

标识符和关键字

技术分享图片

  • 所有标识符都应该以字母,美元符、下划线开始

  • 首字母之后可以是字母、美元符、下划线或者数字的任何字符组合

  • 不能使用关键字作为变量名或方法名

  • 标识符是大小写敏感的

  • 不建议用中文和拼音

数据类型

基本类型

public class Demo2{
    public static void main(String[] args) {
        //八大基本数据类型

        //整数
        int num1=10;
        byte num2=20;
        short num3=30;
        long num4=39L;

        //小数
        float num5=39.1F;
        double num6=3.1415926;

        //字符
        char name=‘中‘;
        //字符串中String不是关键字,而是类

        //布尔值
        boolean flag = true;
        boolean flag1 = false;
    }
}

引用类型

类、接口、数组

数据类型扩展

import java.sql.SQLOutput;

public class Demo3 {
    public static void main(String[] args) {
        //整数拓展:   进制  二进制0b  十进制  八进制0  十六进制0x

        int i = 10;
        int i2 = 010;
        int i3 = 0x10;

        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println("===========================================================");
        //============================================================
        //浮点数拓展
        //============================================================
        //float    有限   离散  舍入误差  大约  接近但不等于
        //double
        //最好避免使用浮点数进行比较


        float f = 0.1f;//0.1
        double d = 1.0 / 10;//0.1
        System.out.println(f == d);//false

        float d1 = 23232323232323322f;
        float d2 = d1 + 1;

        System.out.println(d1 == d2);//true
        //============================================================
        //字符拓展
        //============================================================
        System.out.println("===========================================================");

        char c1 = ‘a‘;
        char c2 = ‘中‘;
        System.out.println(c1);
        System.out.println((int) c1);
        System.out.println(c2);
        System.out.println((int) c2);

        //所有的字符本质还是数字
        //编码 Unicode 表:(97=a 65=A) 2字节 0-65536
        //U0000 UFFFF

        char c3 = ‘\u0061‘;
        System.out.println(c3);//a
        System.out.println("===========================================================");

        //转义字符
        //\t 制表符
        //\n 换行

        System.out.println("Hello\nWorld");
        System.out.println("===========================================================");

        //
        String sa = new String("hello world");
        String sb = new String("hello world");
        System.out.println(sa == sb);

        String sc = "hello world";
        String sd = "hello world";
        System.out.println(sc == sd);
        //对象  从内存分析

        /**
         * 布尔值扩展
         *         boolean flag = ture;
         *         if (flag == ture) {}//新手
         *         if (flag) {}//老手
         *         Less is More!  代码要精简易读
         */

    }
}

类型转换

Java是强类型语言,运算时的时候需要类型转换。

技术分享图片

运算中,不同类型的数据先转换为同一类型,然后进行运算

public class Demo4 {
    public static void main(String[] args) {
        int i = 128;
        byte b = (byte)i;

        System.out.println(i);
        System.out.println(b);

        int a = 128;
        float c = i;
        System.out.println(a);
        System.out.println(c);
        //强制类型转换  由高到低
        //自动类型转换  由低到高
        /*
        注意点:
        1.不能对布尔值进行转换
        2.不能把数据类型转换为不相干的类型
        3.在把高容量转换到低容量的时候,进行强制转换
        4.转换的时候可能存在内存溢出,或者精度问题!
         */

        System.out.println("===============");
        System.out.println((int)23.7);//23
        System.out.println((int)-42.32f);//-42

        System.out.println("===============");
        char d = ‘a‘;
        int e = d+1;
        System.out.println(e);
        System.out.println((char)e);
    }
}
public class Demo6 {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;
        int years = 20;
        int total = money*years;//-147836480,计算的时候溢出了
        long total2 = money*years;//默认是int,转换之前已经存在问题了
        long total3 = money*((long)years);//先把一个数转换为Long
        System.out.println(total3);
    }
}

Java基础(上)

原文:https://www.cnblogs.com/kikikikikiku/p/13983368.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!