# day-11 Java基础

创建新项目

在这里插入图片描述

接着会弹出 项目结构 窗口 (关掉)
在这里插入图片描述
在这里插入图片描述
右击src
在这里插入图片描述
注意:
打开项目结构
在这里插入图片描述

在这里插入图片描述

基础语法
psvm和sout

第一个代码
在这里插入图片描述
在这里插入图片描述

Java中的注释

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

 1//好好学习
        //天天向上
        
 2/*
            多行注释
            多行注释
         */

 3/** 文档注释
         * @Description HelloJava
         * @Author 阿董
         */

标识符

  • 关键字
    在这里插入图片描述
    注意:

Java标识符由数字、字母、下划线_ 、美元符号$、或人民币符号¥组成

1.不能以数字开头
2.大小写敏感
3.不能使用Java关键字,但可以使用包含关键字,保留字的字符序列,例如:关键字为String ,标识符可以为MyString
4.不能有空格、@、#、+、-、/ 等符号,但是人名币符号¥可以且不限制位置
5.Java中标识符的长度没有限制
6.应该使用有意义的名称,达到见名知意的目的

数据类型

在这里插入图片描述

public class DataType {
    
    
    public static void main(String[] args) {
    
    
        byte num1 = 10;
        short num2 = 20;
        int num3 = 30;    //最常用的
        long num4 = 40L;  //long定义的时候需要在数字的后面加上“L”,用来区分long类型

        //浮点数类型
        float num5 = 50.1f;//float占4个字节,float定义的时候需要在数字的后面加上”f“,用来区分float类型
        double num6 = 60.1;//double占8个字节

        //字符类型
        char name1 = 'G';   //char占2个字节
        char name2 ='董';//   char name2 ='阿董';(错误)

        //boolean类型
        boolean flag1 = true;
        boolean flag2 = false;
    }
}

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

数据类型拓展及面试题目

整数类型(进制)

二进制:0b开头

八进制:0开头

十进制:正常

十六进制:0x开头

public class Demo1 {
    
    
    public static void main(String[] args) {
    
    
        int i1 = 0b10;//二进制
        int i2 = 10;//十进制
        int i3 = 010;//八进制0
        int i4 = 0x10;//十六进制0x
        System.out.println(i1);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println(i4);
    }
}

在这里插入图片描述

浮点数拓展

        float f = 0.1f;
        double d = 0.1;
        System.out.println(f==d);//false
        System.out.println(f);
        System.out.println(d);

        float d1 = 223232323232f;
        float d2 = d1 + 1;
        System.out.println(d1==d2);//true

在这里插入图片描述

float double 浮点数表示的字长是有限的且是离散的,并且存在舍入误差,结果只能是一个大约数
银行业务(钱)使用BigDecimal数学工具类表示
最好完全避免使用浮点数进行比较!(精度丢失)

字符拓展

Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
byte,short,char->int->long->float->double
高—>低强制转换;低—>高自动转换
运算中,不同类型的数据先转化为同一类型,然后进行运算

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

        char c1 = 'a';
        char c2 = '中';
        System.out.println(c1);
        System.out.println((int)c1);//强制转换
        System.out.println(c2);
        System.out.println((int)c2);//强制转换,转换成数字
        char c3 = '\u0061';
        System.out.println(c3);//a

在这里插入图片描述
所有的字符本质是数字
Unicode编码占2字节,最多可表示65536位
97 = a 65 = A 20013 = 中

\u0061是Unicode的标准的表示方式(\u是转义字符)

转义字符:
在这里插入图片描述

        System.out.println("阿董\t阿董");
        System.out.println("阿董\n阿董");

在这里插入图片描述

字符串对比

        String a = new String("我爱中国");
        String b = new String("我爱中国");
        System.out.println(a==b);//false,地址不同  
        //new一个内存就会创建一块空间(不管内容是否相同)

        String a1 = "我爱中国";
        String b1 = "我爱中国";
        System.out.println(a1==b1);//true,指向同一个字符串池

在这里插入图片描述

原因:new一个内存就会创建一块空间(不管内容是否相同)
第二个保存在字符串常量池中

布尔值拓展

if(flag==true){}和if(flag){}相等
if本身会做一个判断是否为真的操作

猜你喜欢

转载自blog.csdn.net/weixin_48245161/article/details/113340612
今日推荐