Java基础语法(一)

什么是IDE(集成开发环境,例如:Eclipse,IDEA)

  • IDEA介绍
  • IDEA官网:https://www.jetbrains.com
    image
  • psvm(public static void main(String[] args))
  • sout(输出快捷键)

Java基础语法


注释

image
image

  • 平时我们编写代码,在代码量比较少的时候每门还可以看懂自己写的,但是当项目结构一旦复杂起来骂我们就需要用到注释了

  • 知识并不会被执行,是给我们写代码的人看的.

  • 书写注释是一个非常好的习惯。

  • 平时写代码一定要注意规范。

  • Java中注释有三种

    • 单行注释 // 可以注释一行文字
    • 多行注释 /* */可以注释一段文字
    • 文档注释/** */

1.原先我还知道我在写什么,但是现在,只有上帝知道了。
这条注释是优秀数学家Karl Weierstrass写的。我唯一想问的是,他前后指的是不是同一个数学难题。如果是,那又是为什么,我真的非常想知道。
2.谨将我的所有代码所有工作献给我的妻子Darlene,因为她养育了我和我们的三个孩子,以及会一条人来疯的狗。
3.等我喝醉了再来修复。
4.此处有危险,快撤退。
5.这代码很烂,我不说你也知道了。如果你能搞定它,那叫我傻瓜我也应。
6.代码有问题别找我!虽然是我写的,但是它们自己长歪了。
7.0不能做除数,没办法我只好用一个非常相近的数值代替:0=0.00000000000001
8.如果你看到这个,那么说明你现在已经在负责我以前的项目了。我感到非常抱歉。愿上帝保佑你。
9.如果这些代码有用,那它们是Paul DiLascia写的,如果没用,那我就不知道是谁写的了。


标识符

  • 关键字
    image

  • 所有的标识符都应该以字母(AZ或小写az),美元符号($),或者下划线(_)开始

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

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

  • 标识符是大小写敏感的

  • 合法的标识符举例:age,¥salary,_value ,_1_value

  • 非法的标识符 :123abd,-salary,#abc

  • 可以使用中文命名,但是一般不这样,也不建议使用拼音很low


数据类型

  • 强数据类型
    • 要求变量的使用要严格符合规定,所有变量都必须先定义后,带能使用
  • 弱类型语言
    -Java的数据类型分为两大类
    • 基本类型(primitive type)
    • 引用类型(reference type)
      image

变量

  • 变量是什么:就是可以变化的量
  • Java是一种强类型语言,每个变量都必须声明其类型
  • Java变量是程序中最基本的存储单元,其要素包括变量名,便俩个类型和作用域
    image
  • 注意事项
    • 每个变量都有类型,可以是基本类型,也可以是引用类型
    • 边框名必须是合法分标识符
    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
        int num1 = 10;//最常用
        byte num2 = 20;
        short num3 = 30;
        long num4 = 30L;//long类型要在数字湖面加L

        //小数
        float num5 = 50.1F;
        double num6 = 3.141592653;


        //字符
        char name1 = 'A';
        //字符串,String不是关键字,是类
        String name2 = "韩锁";

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

什么是字节

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

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

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

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

  • 1bit表示一位,

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

  • 1024B = 1KB

  • 1024KB = 1M

  • 1024M = 1G


public class demo03 {
    public static void main(String[] args) {
        //进制
        int i = 10;
        int i2 = 010;//八进制 0
        int i3 = 0x10;//十六进制 0x 0~9 A~F
        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
        float d1 = 23132131f;
        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 2字节  0-65536 Excel 2*16 = 65536
        //表 97 = a 65 = A

        //U0000 UFFFF
        char c3 = '\u0061';
        System.out.println(c3);

        //转义字符
        //\t制表符
        //\n换行符
        System.out.println("Hello\tWorld");
        //==================================================
        String sa = new String("hello world");
        String sb = new String("hello world");
        System.out.println(sa==sb);//f

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

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

类型转换

  • Java是强类型语言,所以在进行有些运算的时候,需要用到类型转换
低 --------------------------------->高

byte,short,char->int->long->float->double
  • 运算中,不同类型的书籍先转化为同一类型,但后进行运算
  • 强制类型转换
//强制转换  (类型)变量名
public static void main(String[] args) {
        int i = 128;
        byte b = (byte)i;//内存溢出
        System.out.println(i);
        System.out.println(b);
    }

image

  • 内存溢出问题 byte就到127

  • 自动类型转换

public static void main(String[] args) {
        int i = 128;
        double b = i;
        System.out.println(i);
        System.out.println(b);
}

image

 /*
        *注意点:
        * 1.不能对bool值进行转换
        * 2.不能把对象类型转换为不相干的类型,
        * 3.再把高容量转换为低容量的额时候,强制转换
        * 4.转换的时候可能存在内存溢出,或者精度问题
        *
        */
        System.out.println("============================");
        System.out.println((int)23.7);
        System.out.println((int)-45.66f);

image

	char c = 'a';
        int d = c+1;
        System.out.println(d);
	System.out.println((char)d);

image

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

        //L   l   在使用中用L(大写)
}

变量

  • 变量是什么:就是可以变化的量;
  • Java是一种强类型语言,每个变量都必须声明其类型。
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varName [=value] [{,vaeName[=value]}];
//数据类型  变量名 = 值;可以使用都喊隔开来声明多个同类型变量。
  • 注意事项:
    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型
    • 变量名必须是合法的标识符
    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

变量作用域

  • 类变量
  • 实例变量
  • 局部变量
    image
public class Demo08 {
    //类变量 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 Demo08();
        Demo08 demo08 = new Demo08();
        System.out.println(demo08.age);
        System.out.println(demo08.name);

        //类变量 static
        System.out.println(salary);
    }

    //其他方法
    public  void add(){

    }
}


常量

  • 常量(Constant):初始化(initiallize)后不能再改变值!不会变动的值。
  • 所谓常量可以理解成一种特殊的变量,他的值被设定后,在程序运行的过程中不允许被改变
final 常量名 = 值;
final 都变了 PI = 3.14;
- 常量名一般使用大写字符。

变量的命名规范

  • 所有变量,方法,类名:见命知意
  • 类成员变量:首字母小写和驼峰原则:monthSa lastNamelary,除了第一个单词以外,后面的单词首字母大写 lastName
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰规:run(),runRun()

运算符

  • Java语言支持如下运算符
    image
posted @ 2021-04-10 23:33  轻狂书生han  阅读(279)  评论(0编辑  收藏