小白Java入门基础笔记总结

JAVA数据类型及其扩展

最近开始了Java的学习,作为一个刚入门Java的小白,用博客来记录自己爹学习笔记,便于回顾,我是跟着狂神在b站上进行学习的,狂神讲的特别细致,基础什么的基本全覆盖了,感兴趣的友友可以一起学习哦。

1.数据类型

JAVA数据类型分为数值型boolean类型引用型

数值型分为整数类型,浮点类型和字符类型。

整数类型

类型 字节范围 字节(B)
byte -128~127 1
short -32768~32767 2
int -2147483648~2147483647 4
long -9223372036854775808~9223372036854775807 8
 //整数类型
    byte b = 0; //java是强类型语言,变量必须定义赋值后再存在
    int  i=10;
    short s=20;
    long  l=1000L;//long类型数据要在后面加L,在编译的时候知道是long类型的

浮点数类型

类型 字节(B)
float 4
double 8
 //小数 浮点数
        float num5=5.3F;//float在后面要加一个F
        double num6=45522.3;

字符类型

类型 字节(B)
char 2
//字符
   char num7='A';//只能有一个字符
   System.out.println(a);

boolean类型

boolean类型占 1位并且只有TrueFalse两个。

  boolean a8=true;//只有两个值 true or false

引用类型

对象,类,数组。后期会补充。


2.数据类型扩展

整数扩展

整数表示可用二进制,十进制,八进制,十六进制表示。

//整数扩展
        int i=10;//十进制
        int i2=010;//八进制0  三位对应一个二进制数,向前补零
        int i3=0x10;//十六进制  0x前缀表示为十六进制,四位对应一个二进制数,不够向前补零
       System.out.println(i);
       System.out.println(i2);//对应十进制数为8
       System.out.println(i3);//对应十进制数为16

运行结果如下:

浮点数扩展

//浮点数扩展  浮点数存在舍入误差,所以尽量避免使用浮点数进行比较
//BigDecimal  数学工具类,可用来进行高精度计算,银行计算都用这些

        float f=1.1F;
        double d=1.0/10;  //表示为0.1
        System.out.println(f==d);//输出为flase
        float d1=1556224565444f;
        float d2=d1+1;//d1精度超出范围 所以+1也无反应,仍为原来的样子
        System.out.println(d1==d2);//此时输出为true,可以敲代码测试一下

运行结果如下:

字符扩展

        char a9='A';
        char a10='中';
        System.out.println(a9);
        System.out.println((int)a9);//强制转换类型 转换成int
        System.out.println(a10);
        System.out.println((int)a10);//强制类型转换为int
 

运行输入结果如下:

布尔值扩展

         boolean b1=true;
        if(b1){   //等同于 if(b1==true)

        }

可用该方法来简化代码,提升代码质量。

//所有字符本质是数字
//编码 Unicode 表:97是a,65是A   2字节,大小0-65536
        char c3='\u0061';
        System.out.println(c3);

运行输入结果如下:


二 .变量和运算符

变量和常量

变量分为类变量,类变量,实例变量,局部变量 三种;

常量标识符为 final,常量名一般用大写字母表示

public class demo4 {
    static  double salary =2500;     //static 标识的变量为静态变量,可以直接输出,不需要用创建对象引用

    //实例变量 作用域更大,从属于对象
    String name;
    int age;
    //常量  final    常量名一般使用大写字母来写
    //final static double PI=3.14; ①  修饰符不分前后①和②代码作用相同
     static final  double PI=3.14; ②
    // main方法
    public static void main(String[] args) {
        //局部变量,必须声明和初始化值,只在main里面有作用
        int  i=10;
        System.out.println(i);
        //变量类型,变量名字=new demo4();
        demo4 demo4=new demo4();
        System.out.println(demo4.name);
        System.out.println(demo4.age);
        System.out.println(salary);//在静态方法中可以直接访问静态变量
        System.out.println(PI);
        System.out.println("---------------------------------------------------");
        //命名规则遵循驼峰

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

    }
}

操作符和运算符

1.二元运算符

二元运算符有:"+","-","*","/"

public class Demo1 {
    public static void main(String[] args) {
        //二元运算符
        int a=10;
        int b=20;
        int c=30;
        int d=25;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);//注意作用范围,此时输的是小数0.5
         System.out.println(a/b);//注意作用范围,因为a,b均为int类型,因此输出为整数0
    }
}

[!NOTE]

只要有一个数值为long 那么结果就为long 其他情况结果全为int cast 转换
算数混合运算中 最低精度为int 低于这个的都为int

public class demo2 {
    public static void main(String[] args) {
        long a=4554444455445L;
        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(c+d);//输出结果为int
        //只要有一个数值为long  那么结果就为long  其他情况结果全为int cast 转换
        //算数混合运算中 最低精度为int  低于这个的都为in他、
    }
}

2.关系运算符

关系运算符有: "<",">","==","<=",">=","!=''

public class Demo3 {
    public static void main(String[] args) {
        //关系运算符, 返回结果要么为正确,要么为错误 布尔值
        int a=10;
        int b=20;
        int c=21;
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
        System.out.println(c%a);//取余操作 模运算
    }
}

3.自增自减运算符

a++表示a自增,a--表示a自减

public class Demo4 {
    public static void main(String[] args) {
        //++,-- 自增 自减 一元运算符
        int a=10;
        System.out.println(a);
        int b=a++;//可分解为a=a+1;  b=a;
        int c=++a;//可分解为c=a+1; 
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
}

[!NOTE]

补充 幂运算,一般会用到很多工具类来操作

 //幂运算 2^3  很多运算会使用工具类来操作

        double pow= Math.pow(2,3);
        System.out.println(pow);//输出为2*2*2=8

4.逻辑运算符

public class Demo5 {
    public static void main(String[] args) {
        boolean a= true;
        boolean b=false;
        System.out.println("a&&b:"+(a&&b));
        System.out.println("a||b:"  + (a||b));
        System.out.println("!(a&&b):"+!(a&&b));
       
    }
}

[!NOTE]

补充:短路运算

 //短路运算
        int c=5;
        boolean d=(c<4)&&(c++<4);//也就是说 与运算如果第一个条件就不满足 后面条件不会执行
        System.out.println(d);
        System.out.println(c);

5.位运算

​ A&B A和B均为1是为1
​ A|B 都是0为0 否则全是1 同或
​ A^B 相同为0 不同为1 异或
​ ~B 非

右移 <<左移

//位运算
public class Demo6 {
    public static void main(String[] args) {
       /*
        A=00111100
        B=00001101
       
        //左移右移操作
    
         */
        System.out.println(2<<3); //  10向左移动3位
    }
}

6.三元运算符

三元运算符 x?y:z

如果x==true 结果为y。否则为z

public class Demo8 {
    public static void main(String[] args) {
        //三元运算符  x?y:z
        //如果x==true 结果为y。否则为z
        int score=80;
         String out=score<60?"不及格":"及格";
        System.out.println(out);

    }
}

这是学习的笔记,可能有遗漏错误之处,欢迎各位友友指正交流!!!!

posted on 2025-02-25 21:28  corncob  阅读(17)  评论(0)    收藏  举报