1. 注释

    • 单行注释:

      //单行注释
    • 多行注释

      /*
      * 多行注释
      * 多行注释
      * */
    • 文档注释

      /** 
      * 文档注释
      * 文档注释
      */
  2. 标识符

    • 关键字

      

    • 标识符

      1. 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始

      2. 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合

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

      4. 标识符是大小写敏感

      5. 合法标识符举例:age, $salary, _value, __1_vaule

      6. 非法标识符举例:123abc, -salary, #abc

  3. 数据类型

    强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

    Java的数据类型分为两大类

    

  1. 什么是字节

    • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。

    • 字节(byte):是计算机中,数据处理的基本单位,习惯上用大写B来表示。

    • 1B(byte,字节)= 8bit(位)

    • 字符:是指计算机中使用的字母,数字,字和符号

    • 1bit表示1位

    • 1Byte表示一个字节 1B = 8b。

    • 1024B = 1KB

    • 1024KB = 1M

    • 1024M = 1G

  2. 数据类型扩展

    • public class Demo02 {    
         public static void main(String[] args) {        
             //整数扩展 进制 二进制0b 十进制   八进制0   十六进制0x        
             int i = 10;        
             int i2 = 010;//八进制        
             int i3 = 0x10;//十六进制 0-9 A-F 16        
             System.out.println(i);        
             System.out.println(i2);        
             System.out.println(i3);        
             System.out.println("=====================================");        
             //=====================================        
             //浮点数扩展? 银行业务怎么表示?钱        
             // BigDecimal   数学工具类        
             //=====================================        
             //float 有限 离散   舍入误差   大约 接近但不等于        
             //最好完全使用浮点数进行比较        
             //最好完全使用浮点数进行比较        
             //最好完全使用浮点数进行比较        
             float f = 0.1f;        
             double d = 1.0/10;        
             System.out.println(f==d);        
             System.out.println(f);        
             System.out.println(d);        
             float d1 = 231313131313131312f;        
             float d2 = d1 + 1;        
             System.out.println(d1==d2);        
             //=====================================        
             //字符扩展?        
             //=====================================        
             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 2字节 0-65536 Excel 2 16 = 65536        
             //U0000 UFFFF        
             char c3 = '\u0061';        
             System.out.println(c3);        
             //转义字符        
             // \t 制表符        
             // \n 换行        
             // 等        
             System.out.println("Hello\tWorld");        
             System.out.println("Hello\nWorld");                
             //布尔值扩展        
             boolean flag = true;        
             if (flag==true){} //新手        
             if (flag){} //老手        
             //less is More 代码要精简易读    
        }
      }
  3. 类型转换

    • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。

      低------------------------------------------------------------------------->高

      byte,short,char-->int-->long-->float-->double (小数的优先级大于整数)

    • 运算中,不同类型的数据先转化位同一类型,然后进行运算。

    • 强制类型转换

    • 自动类型转换

    public class Demo03 {
       public static void main(String[] args) {
           int i = 128;
           byte b = (byte)i; //内存溢出
           //强制转换 (类型)变量名 高--低
           System.out.println(i);
           System.out.println(b);
           //自动转换 低--高
           int m = 128;
           double n = i;
           System.out.println(m);
           System.out.println(n);
           /*
           注意点
           1.不能对布尔值进行转换
           2.不能把对象类型转换位不相干的类型
           3.在把高容量转换到低容量的时候,强制转换
           4.转换的时候可能存在内存溢出,或者精度问题!
           * */
           System.out.println("================================");
           System.out.println((int)23.7);//23
           System.out.println((int)-45.89f);//-45
           System.out.println("================================");
           char c = 'a';
           int d = c+1;
           System.out.println(d);
           System.out.println((char) d);
      }
    }



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

  1. 变量

    • 变量是什么:就是可以变化的量!

    • Java是一种强类型语言,每个变量都必须声明其类型。

    • Java变量是程序中最基本的储存单元,其要素包括变量名,变量类型和作用域。

    • 注意事项:

      • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。

      • 变量名必须是合法的标识符。

      • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

    • 变量作用域

      • 类变量

      • 实例变量

      • 局部变量

      public class Demo06 {


         //类变量: static
         static double salary = 2500;

         //属性:变量

         //实例变量:从属于对象:如果不初始化,这个类型的默认值 0 0.0
         //布尔值:默认值是false
         //除了基本类型,其余的默认值都是null
         String name;
         int age;

         //main方法
         public static void main(String[] args) {
             //局部变量:必须声明和初始化值
             int i = 10;
             System.out.println(i);

             //变量类型 变量名字 = new Demo06();
             Demo06 demo06 = new Demo06();
             System.out.println(demo06.age);
             System.out.println(demo06.name);

             //类变量: static
             System.out.println(salary);
        }
         //其他方法
         public void add(){

        }
      }
    • 常量

      • 常量(Constant):初始化后不能再改变值!不会变动的值

      • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变。

      • 常量名一般用大写字符

      • final 数据类型 常量名 = 值;

      public class Demo07 {
         //static是修饰符,不存在先后顺序
         static final double PI = 3.14;
         public static void main(String[] args) {
             System.out.println(PI);
        }
      }
  1. 变量的命名规范

    • 所有变量,方法、类名:见名知意

    • 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以为,后面的单词首字母大写

    • 局部变量:首字母小写和驼峰原则

    • 常量:大写字母和下划线:MAX_VALUE

    • 类名:首字母大写和驼峰原则:Man,GoodMan

    • 方法名:首字母小写和驼峰原则:run(),runRun()

  2. 基本运算

    • Java语言支持如下运算符:

      • 算数运算符:+ , - , * , / , % , ++ , --

      • 赋值运算符:=

      • 关系运算符:> , < , >= , <= , == , != , instanceof

      • 逻辑运算符:&& , || , !

      • 位运算符:& , | , ^ , ~ , >> , << , >>>(了解!!!)

      • 条件运算符:? :

      • 扩展赋值运算符:+= ,-= ,*= ,/=

    package operator;

    public class Demo01 {
       public static void main(String[] args) {
           //二元运算符
           //Ctrl + D :复制当前行到下一行
           int a = 10;
           int b = 20;
           int c = 25;
           int d = 25;
           System.out.println(a+b);
           System.out.println(a-b);
           System.out.println(a*b);
           System.out.println(a/(double)b);
      }
    }


    package operator;

    public class Demo02 {
       public static void main(String[] args) {
           long a = 123146546131L;
           int b = 123;
           short c = 10;
           byte d = 8;
           System.out.println(a+b+c+d);//long
           System.out.println(b+c+d);//int
           System.out.println(c+d);//int
      }
    }


    package operator;

    public class Demo03 {
       public static void main(String[] args) {
           //关系运算符返回的结果: 正确,错误   布尔值
           int a = 10;
           int b = 20;
           int c = 21;

           //取余,模运算
           System.out.println(c%a);  //21/10=2...1

           System.out.println(a>b);
           System.out.println(a<b);
           System.out.println(a==b);
           System.out.println(a!=b);
      }
    }



    package operator;

    public class Demo04 {
       public static void main(String[] args) {
           //++   --   自增,自减   一元运算符
           int a = 3;
           int b = a++; //执行完这行代码后,先给b复制,再自增
           //a = a + 1
           System.out.println(a);
           //a = a + 1
           int c = ++a;//执行完这行代码前,先自增,再给b复制

           System.out.println(a);
           System.out.println(b);
           System.out.println(c);

           //幂运算2^3 2*2*2=8 很多运算,我们会使用一些工具类来操作!
           double pow = Math.pow(2,3);
           System.out.println(pow);
      }
    }

自学JavaDay02_class02的更多相关文章

  1. 从零自学Hadoop(22):HBase协处理器

    阅读目录 序 介绍 Observer操作 示例下载 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,Sour ...

  2. 前端自学路线之js篇

    上一篇我们讲了前端切图的学习路线,不知大家有没有收获.今天来聊聊前端工程师的核心技能之——JavaScript.js这门语言看似简单,但要做到入门.熟练以至于架构的程度,还是有一段路要走的,今天就来聊 ...

  3. 从零自学Hadoop(20):HBase数据模型相关操作上

    阅读目录 序 介绍 命名空间 表 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  4. 从零自学Hadoop系列索引

    本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 从零自学Hadoop(01):认识Hadoop ...

  5. 从零自学Hadoop(21):HBase数据模型相关操作下

    阅读目录 序 变量 数据模型操作 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 ...

  6. 从零自学Hadoop(19):HBase介绍及安装

    阅读目录 序 介绍 安装 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 序 上一篇, ...

  7. 从零自学Hadoop(18):Hive的CLI和JDBC

    阅读目录 序 Hive CLI(old CLI) Beeline CLI(new CLI) JDBC Demo下载 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出 ...

  8. 【转】JAVA自学之路

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

  9. 前端自学vs跟大神系统学?你看着办

    前端自学vs跟大神系统学?你看着办 一名广告专业学生,在大三的时候对于广告行业的前景不是很看好,转而自学web前端,刚开始接触的前端语言是html(html应该不算编程语言),上手很容易,在w3csh ...

  10. 【转载】如何自学深度学习技术,大神Yann LeCun亲授建议

    编者按:Quora 上有网友提问:自学机器学习技术,你有哪些建议?(What are your recommendations for self-studying machine learning), ...

随机推荐

  1. GraalVM, Native Image, Java on Truffle, LLVM runtime, WebAssembly, JavaScript and Node.js关系是什么

    GraalVM, Java on Truffle, LLVM runtime, WebAssembly, JavaScript and Node.js关系是什么 GraalVM是一个JDK发行版,支持 ...

  2. CentOS7 minimal 安装 VMware Tools(自带脚本安装)

    1.安装相关组件 yum -y install perl gcc make kernel-headers kernel-devel net-tools 2.新建挂载目录 mkdir -p /mnt/c ...

  3. [NOIP1999 提高组] 旅行家的预算

    洛咕 题意:一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的).给定两个城市之间的距离 \(D_1\).汽车油箱的容量 \(C\)(以升为单位).每升汽油能行驶的距离 \( ...

  4. abap screen表格控件后续增加栏位

    当我们通过screen的表控件(含向导)创建完表格之后,后续想再增加栏位,要先把输入控件拖入表格控件内,再按钮控控件拖进去即可. 注:输入控件的名称和格式要和程序中的一致,否则会显示不出数据 效果图如 ...

  5. 吴恩达老师机器学习课程chapter07——聚类

    吴恩达老师机器学习课程chapter07--聚类 本文是非计算机专业新手的自学笔记,高手勿喷. 本文仅作速查备忘之用,对应吴恩达(AndrewNg)老师的机器学期课程第十三章. 缺少重要推演,只能作为 ...

  6. DELL服务器基于centos7安装OMSA

    DELL服务器基于centos7安装OMSA 参考链接: https://www.cnblogs.com/sky-cheng/p/14951071.html https://www.dell.com/ ...

  7. VS2017创建Linux项目实现远程GDB调试

    vs2017新增linux for C++的模块,尝试安装了一下环境. 首先,安装VS2017,安装时注意选择以下模块: 安装完成后,需要配置Linux服务端的部分,我的配置过程如下: 第一步,安装V ...

  8. cximage第一讲demo.cpp

    使用流程可参考: https://blog.csdn.net/wxc237786026/article/details/41171079 BOOL CDemoApp::InitInstance() { ...

  9. ubuntu20.04系统openjdk11变更openjdk-8-jdk

    ubuntu20.04系统openjdk11变更openjdk-8-jdk一.卸载openjdk11先检查是否安装,命令:dpkg --list | grep -i jdk移除openjdk包,命令: ...

  10. Kubernetes Service发布

    一.定义Service 1-1.首先创建一个Deployment 类型nginx #定义Deployment类型nginx yaml文件 apiVersion: apps/v1 kind: Deplo ...