zoukankan      html  css  js  c++  java
  • day.9(Java基础语法)

    基础语法

    注释

    1. 注释,标识符,关键字【基础】

      • 注释有三种【书写注释是一个非常好的习惯

        • 单行注释.........//单行注释

        • 多行注释........./* 多行注释 */

        • 文档注释........//Javadoc:文档注释/**

    2. 数据类型*

    3. 类型转换

    4. 变量,常量

    5. 运算符【+,-,*,/】

    6. 包机制,JavaDoc

    标识符

    Java所有的组成部分都需要名字。类名,变量名以及方法名都被称为标识符。

    • 关键字

    |

    public class//(关键字) hello//(类名) {
        public static void main(String[] args) {
            //单行注释
            //输出一个hello,world!!!
    
            /*多行注释*/
            /*hello,
            world*/
            //Javadoc:文档注释      /**
            /**【回车】
             * @Description hello,world!!
             * @Author caesar
             */
             String teacher = "秦疆";
            String Ahello ="qinjiang";
            String ahello ="qinjiang";
            String $eacher = "秦疆";
            String _eacher = "秦疆";
            String 王者荣耀 = "秦疆";
            
            System.out.println("HELLO,WORLD!!!");
        }
    }
    
    
    

    常见关键字

    常见关键字

    标识符注意点

    • 所以的标识符都应该以字母(A-Z或a-z),美元符($),或者下划线(_)开始
    • 首字符之后可以是字母(A-Z或a-z),美元符($),或者下划线(_)或数字的任何字符组合
    • 不能使用关键字作为变量名或方法名
    • 标识符是大小写敏感的
    • 合法标识符:age,$salary,_value,__1_value
    • 非法标识符:123abc,-salary,#abc
    • 可以使用中文命名,但是一般不建议使用,也不建议用拼音,很low

    数据类型

    强类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

    安全性高,速度慢

    弱类型语言

    • 要求变量的使用可以符合规定,所有变量都必须先定义后才能使用

    与强类型相反

    Java的数据类型分为两大类

    • 基本类型(primitive type)

    • 引用类型(reference type)

    基本类型

    public class Demo02 {
        public static void main(String[] args) {
            //八大基本类型
    
            //整数
            int num1 = 10;  // 最常用
            byte num2 = 20;
            short num3 = 30;
            long num4 = 30L; //Long类型要在数字后加个L
    
            //小数,浮点数
            float num5 = 50.1F;//float类型后要加F
            double num6 =3.1415926;//不用加D
    
            //字符
            char name = 'A';//一个字符
            char name3 = '中';//要分开
            char name4 = '国';
    
            //字符串,String不是关键词,类
            String name2 = "caesar.spike";
            String name5 = "中国";//不用分开
    
            //布尔值:是非
            boolean flag = true;//是
            boolean flog = false;//非
    
    
            System.out.println(name5);
        }
    }
    
    

    引用类型

    什么是字节

    • 位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数
    • 字节(byte):是计算机数据处理的基本单位,习惯上用大写B来表示
    • 1B(byte,字节)=8bit(位)
    • 字符:是指计算机中使用的字母,数字字,和符号
    • 1bit表示1位
    • 1Byte表示一个字节1B=8b
    • 1024B=1KB
    • 1024KB=1M
    • 1024M=1G

    知识点

    public class Demo03 {
        public static void main(String[] args) {
    
            //整数拓展:   进制    二进制0b开头     十进制     八进制0开头     十六进制0x开头
    
            int i = 10;
            int i2 = 010;//八进制十0
            int i3 = 0x10;//十六进制十0x    0~9   A~F   16
    
            System.out.println(i);
            System.out.println(i2);
            System.out.println(i3);
            System.out.println("===========================================================");
            //===========================================================
            //浮点数拓展:        银行业务怎么表示?钱    不能用浮点数
            //BigDecimol        数学工具类
            //===========================================================
            //float    有限   离散  舍入误差   大约  接近但不等于
            //double
            //最好完全使用浮点数进行比较
            //最好完全使用浮点数进行比较
            //最好完全使用浮点数进行比较
    
            float f = 0.1f;//0.1
            double d = 1.0/10;//0.1
    
            System.out.println(f==d);//false
            System.out.println(f);
            System.out.println(d);
    
            float d1 = 21234144411f;
            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~65535  个字符    Excel只有2的十六次方=25536长
    
            //U000   UFFF
            System.out.println("===========================================================");
    
            char c3 = 'u0061';
            System.out.println(c3);//a
    
            // 转义字符
            // 	  制表符
            // 
      换行
            // ....
    
            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);
            //对象  从内存分析
    
            //布尔值拓展
            System.out.println("===========================================================");
            boolean flag = true;
            
            if(flag==true){}//新手
            // if(flag==true){}  =  if(flag){}
            if(flag){}//老手
        }
    }
    

    类型转换

    • 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
    低-------------------->高【容量,字符大小】
    byte,short,char-->int-->float-->double
    
    • 运算中,不同类型的数据先转化为同一类型,然后进行运算

    • 强制类型转换

    • 自动类型转换

    要点

    public class Demo05 {
        public static void main(String[] args) {
            int i = 128;
            //byte b = i;(报错)
            byte b = (byte)i;//内存溢出
            //强制转换 (类型)变量名   高--低
            double d = i;//无报错
            //自动转换 低--高
    
            System.out.println(i);//128
            System.out.println(b);//-128,因为byte类型范围-127~128
            System.out.println(d);//128.0
            /*
            注意点
            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 x = 'a';
            int y = x+1;
            System.out.println(y);
            System.out.println((char)y);
    
    
    
    
        }
    }
    
    public class Demo06 {
        public static void main(String[] args) {
            //操作比较大的时候,注意溢出问题
            //JDK7新特性,数字之间可以用下滑线,分割
            int money = 10_0000_0000;
            int years = 20;
            int total = money*years;
            System.out.println(money);//1000000000
            System.out.println(total);//-1474836480,计算时候溢出
            long total2 =money*years;//默认是int,转换之前已经存在问题了
            System.out.println(total2);//-1474836480结果没有变化
            long total3 = money*((long)years);//先把一个数转换为long【细节,细节】
            System.out.println(total3);//20000000000,结果正确
    
    
    
    
        }
    }
    
  • 相关阅读:
    xapian的使用
    Andriod 环境配置以及第一个Android Application Project
    2013Esri全球用户大会之ArcGIS for Server&Portal for ArcGIS
    window server 2012 更改密钥 更改系统序列号
    持续集成之路——数据访问层的单元测试(续)
    多项式相乘与相加演示
    hdu 1847 博弈基础题 SG函数 或者规律2种方法
    solaris之cpu
    Android音效SoundPool问题:soundpool 1 not retry
    poj1845-Sumdiv
  • 原文地址:https://www.cnblogs.com/Caesar-spike/p/14490386.html
Copyright © 2011-2022 走看看