JAVA基础语法

JAVA基础语法

  1. 注释、标识符、关键字

    • 注释

      1)单行//

      2)多行/**/

      3)文档/** */

    • 标识符

      1)所有标识符都要以大小写字母、下划线、美元符开头

      2)关键字不能为变量名(ctrl+左键)

      3)标识符大小写敏感

      定义变量(String)

  2. 数据类型

    基本数据类型

    数值类型 byte(一个字节范围:-128-127)

    ​ short(两个字节范围:-32768-32767)

    ​ int(四个字节范围:-2147483648-2147483647)

    ​ long(8个字节范围:-9223372036854775808-9223372036854775807)Long类型要在数字后面加个L

    浮点类型 float(四个字节)Lfloat类型要在数字后面加个F

    ​ double(8个字节)

    字符类型char(两个字节)

    字节:1bit(位) 1Byte表示一个字节 1B=8b(位)

    1024B=1KB 1024KB=1M 1024M=1G 1024G=1TB

    boolean类型:占一位其值只有true和false

    import com.sun.javaws.IconUtil;
    
    import java.sql.SQLOutput;
    
    public class Demo01 {
        public static void main(String[] args) {
            //整数拓展 进制 二进制0b 十进制 八进制 十六进制0x
            int i = 10;
            int i2 = 010;//八进制
            int i3 = 0x10;//十六进制0x 0-9 A-F 16
            System.out.println(i);
            System.out.println(i2);
            System.out.println(i3);
            System.out.println("===============================");
            //==============================================================
            //浮点数拓展 银行业务表示
            //BigDecimal 数学工具类
            //==============================================================
            //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 = 231313123123f;
            float d2 = d1 + 1;
            System.out.println(d1 == d2);//true
            //==============================================================
            //字符拓展
            //==============================================================
            char c1 = 'A';
            char c2 = '中';
            System.out.println(c1);
            System.out.println((int) c1);//强制换行
            System.out.println(c2);
            System.out.println((int) c2);//强制换行
            //所有的字符本质还是数字
            //编码 Unicode 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");
            //
            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 = true;
            if (flag = true) {
            }//新手
            if (flag) {
            }//老手
        }
    }
    

    引用类型

    • 接口
    • 数组
  3. 类型转换

    低………………………………………………高

    byte,short,char-> int -> long -> float ->double

    public class Demo02 {
        public static void main(String[] args) {
            int i=128;
            byte b= (byte)i;//内存溢出
            //强制转换  (类型)变量名 高……低
            //自动转换  低……高
            System.out.println(i);
            System.out.println(b);
            /*
            注意点
            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);//98
            System.out.println((char)d);//b
        }
    }
    
  4. public class Demo03 {
        public static void main(String[] args) {
            //操作数比较大的数的时候,注意溢出问题
            //JDK7新特性,数字之间可以用下划线分割
            int money=10_0000_0000;
            int years=20;
            int total=money*years;
            //类型转换
            long total1=money*((long)years);
            System.out.println(years);
            System.out.println(money);
            System.out.println(total);//-1474836480 计算时溢出
            System.out.println(total1);//20000000000
        }
    }
    
  5. 变量、常量

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

    public class Demo04 {
        public static void main(String[] args) {
            //int a,b,c;
            //int a=1,b=2,c=3;//程序可读性
            String name="daiwei";
            char x='X';
            double p1=3.14;
        }
    }
    
    //常量
    final 常量名=值;
    
    final double PI 3.14//常量名一般使用大写字符
    
    type varName [=value] [{,varName[=value]}];
    
    //数据类型 变量名=值;可以使用逗号隔开来声明多个同类型变量。
    
    public class Demo05 {
        //类变量  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 Demo05();
           Demo05 demo05 =new Demo05();
            System.out.println(demo05.age);
            System.out.println(demo05.name);
    
            //类变量  static
            System.out.println(salary);
    
        }
        public void add(){
        }
    }
    

    命名规范

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

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

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

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

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

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

    public class Demo06 {
        //修饰符,不存在先后顺序
        static final double PI=3.14;
    
        public static void main(String[] args) {
            System.out.println(PI);
        }
    }
    
  6. 运算符

    算术运算符:+,-,,\,%,++,–

    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 Demo04 {
        public static void main(String[] args) {
            //++  -- 自增,自减,一元运算符
            int a=3;
            int b=a++;//执行完这行代码后,先给b赋值,再自增
            //a++ a=a+1
            System.out.println(a);//4
            //a++ a=a+1
            int c=++a;//执行完这行代码后,先自增,在给c赋值
    
            System.out.println(a);//5
            System.out.println(b);//3
            System.out.println(c);//5
    
            //幂运算  2^3  2^2^2=8
            //很多运算,我们使用工具类来操作!
            double pow= Math.pow(2,3);//8.0
            System.out.println(pow);
        }
    }
    

    *赋值运算符:=

    package operator;
    
    public class Demo02 {
        public static void main(String[] args) {
            long a=123123123123123L;
            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((double)c+d);//double
            System.out.println(c+d);//Int
        }
    }
    

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

    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);//取余(模运算)1
            System.out.println(a>b);//false
            System.out.println(a<b);//true
            System.out.println(a==b);//false
            System.out.println(a!=b);//true
        }
    }
    

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

    package operator;
    
    //逻辑运算符
    public class Demo05 {
        public static void main(String[] args) {
            //与(and) 或(or) 非(取反)
            boolean a=true;
            boolean b=false;
            System.out.println("a&&b: "+(a&&b));//false
            System.out.println("a||b: "+(a||b));//true
            System.out.println("!(a&&b): "+!(a&&b));//true
    
            //短路运算
            int c=5;
            boolean d=(c<4)&&(c++<4);
            System.out.println(d);//false
            System.out.println(c);//5
        }
    }
    

    位运算符:&,|,^,~,>>,<<,>>>

    package operator;
    //位运算
    public class Demo06 {
        public static void main(String[] args) {
            /*
            A=0011 1100
            B=0000 1101
    
            A&B  0000 1100  相同为1
            A|B  0011 1101  有1就为1
            A^B  0011 0001   不同为1
            ~B   1111 0010
    
            2^8=16  2*2*2*2
    
            <<  *2
            >>  /2
    
            0000 0000   0
            0000 0001   1
            0000 0010   2
            0000 0011   3
            0000 0100   4
            0000 1000   8
            0001 0000   16
    
             */
            System.out.println(2<<3);
        }
    }
    

    条件运算符:?

    package operator;
    
    //三元运算符
    public class Demo08 {
        public static void main(String[] args) {
            //x?y:z
            //如果x=true,则结果为y,否则结果为z
            int score=80;
            //必须掌握
           String type= score<60?"不及格":"及格";
            System.out.println(type);
        }
    }
    

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

    package operator;
    
    public class Demo07 {
        public static void main(String[] args) {
            int a=10;
            int b=20;
            a+=b;//a=a+b
            a-=b;//a=a-b
            System.out.println(a);//10
    
            //字符串连接符  +  , String
            System.out.println(a+b);//30
            System.out.println(a+b+"");//30
            System.out.println(""+a+b);//1020
        }
    }
    
  7. 包机制(本质文件夹)、javaDoc

    包语句的语法格式为:

    package pkg1[,pkg2[,pkg3……]]
    //导入包使用import
    import package1[,package2……],(classname|*);
    
    package com.study.basc;
    
    /**
     * @author 
     * @version  1.0
     * @since 1.8
     */
    public class Doc {
        String name;
        /**
         * 
         * @param name
         * @return
         * @throws Exception
         */
        public String test(String name)throws Exception{
            return name;
        }
        
    }
    

    命令:

    javadoc -encoding UTF-8 -charset UTF-8 Doc.java

    //-encoding 是Java代码编码,-charset是对生成文档所问的编码

    -encoding UTF-8 -charset UTF-8 -windowtitle “test”

    -windowtitle就是对应html的标签

https://blog.youkuaiyun.com/qq_42498502/article/details/90078972?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

得。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值