java_day03_1


JAVA基础语法

目录

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

  2. 数据类型

  3. 类型转换

  4. 变量、常量

  5. 运算符

  6. 包机制、JavaDoc

1 注释、标识符、关键字

1.1 注释

  1. 单行注释:双斜线//

  2. 多行注释:/* 多行注释*/(平时可用ctrl+/快捷注释)

  3. 文档注释:/** * */

1.2 标识符

  1. 关键字

image-20220320155345447

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

  1. 标识符注意点

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

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

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

  • 标识符是大小写敏感的

  • 中文可以,但是一般不建议

2 数据类型

  • 强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义才能使用。(java就是一种强类型语言)

2.1 Java数据分为两大类

  • 基本类型:一般整数int就够用了;浮点即小数,分别与float和long对应。

  • 引用类型 数据类型具体描述如下:

image-20220320221538540

public class demo02 {
   public static void main(String[] args) {
       //String a=10;
       String a = "10";
       System.out.println(a);
       //八大数据类型
       //整数
       int num1 = 10;  //最常用
       byte num2 = 20;
       short num3 = 30;
       long num4 = 30L; //long类型要在数字后边加个L
?
       //小数、浮点数
       float num5 = 50.1F;  //要在后边加个F
       double num6 = 3.1415926;
?
       //字符
       char name = 'A';  //注意这里是单引号
?
       //字符串,String不是关键字,是类
       String namea = "新学期";
?
       //布尔值
       boolean flag = true ;
       //boolean flag = false ;
?
  }
}

2.2 基本数据类型扩展

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
       System.out.println(i);
       System.out.println(i2);      //8
       System.out.println(i3);    //16
       System.out.println("==============================================");
       //=============================================================
       //浮点数扩展? 银行业务怎么表示?
       //BigDecimal 数学工具类
       //=============================================================
       //float     能表现的字长是有限的,舍入误差   大约   接近但不等于
       //double   最好完全避免使用浮点数进行比较
       float f = 0.1f;
       double d = 1.0/10;
       System.out.println(f==d);      //输出false
       System.out.println(f);         //0.1
       System.out.println(d);         //0.1
?
       float d1= 232132132132132f;
       float d2 = d1+1;
       System.out.println(d1==d2);     //输出true
       //=============================================================
       //字符扩展
       //=============================================================
       char c1 = 'a';
       char c2 = '中';
       System.out.println(c1);         // 输出a
       System.out.println((int)c1);      //int用来强制转换,输出97
       System.out.println(c2);
       System.out.println((int)c2);    //输出20013
       //所有字符本质还是数字
       //编码 Unicode表(97=A 65=a)   2字节   最多可以表示0-65536
?
       //U0000-UFFFF
       char c3 = '\u0061';     //16进制,6*16+1=97
       System.out.println(c3); //就是a
       //=============================================================
       //转义字符
       //=============================================================
       // \t   制表符
       // \n   换行
       System.out.println("hello\nworld");
?
       //=============================================================
       // 布尔值扩展
       //=============================================================
       boolean flag = true;
       if (flag){
?
      }
?
  }
}
?

3 类型转换

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

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

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

3.1 强制转换

3.2 自由转换

public class demo04 {
   public static void main(String[] args) {
       int i = 128;
       //byte b =i ; 数据类型不统一
       //-----------------------------------------------------------
       //强制转换   (类型)变量名   高---->低
       //-----------------------------------------------------------
       byte b = (byte)i;
       System.out.println(i);  //128
       System.out.println(b);    //-128,内存溢出了,因为字节最多2的8次方,256即-128~127
?
       //-----------------------------------------------------------
       //自动转换     低---->高
       //-----------------------------------------------------------
       double d = (double)i;
       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 c = 'a';
       int e = c+1;
       System.out.println(e);    //98
       System.out.println((char)e);    //b
       //-----------------------------------------------------------
       //操作比较大数时候,注意溢出问题
       //JDK7新特性,数字之间可以用下划线分割
       //-----------------------------------------------------------
       int money =10_0000_0000;
       int years = 20;
       int total = money*years;
       long tota2 = money*years;
       System.out.println(money);    //1000000000
       System.out.println(total);    //-1474836480,计算的时候溢出了
       System.out.println(tota2);   //输出之前已经默认是int
?
       long total3 = money*((long)years);   //所以如果出现溢出问题,提前要把一个数转换为long
       System.out.println(total3);
?
?
  }
}
?

 

知识补充

1 什么是字节

image-20220320163515174

2 新建项目

  1. File->New->Project->java

  2. File->New->Empty project->出来文件之后再新建module即功能模块,之后如果要写代码,可以在src文件里新建java class文件

  3. File->settings->Editor->Color Scheme->java->comments,这里可以对单行、多行以及Dos注释进行样式设置,记得关闭继承才可以。