Java 基础(一)

声明变量

class demo{
    public static void main(String[] args){
        // 先声明,后赋值
        int a;
        a = 1;

        // 直接赋值
        int b = 2;

        // 多个声明
        int c,d = 4, e=5;
        c = 3;
    }
}

 

基本数据类型

整数

  • byte      -128 ~ 127
  • short     -32768 ~ 32767
  • int         -2147483648 ~ 2147483647
  • long      -9223372036854775708 ~ 9223372036854775707

如果提示该整数值过大,在后面加 L 即可。

class demo{
    public static void main(String[] args){
        long l = 99999999999999L;
        System.out.print(l);
    }
}

 

浮点型

  • float
  • double

浮点默认为:double,如果想转 float,在数值后加 F 。

class demo{
    public static void main(String[] args){
        float f = 1.5F;
        System.out.print(f);
    }
}

 

布尔型

  • boolean

 

字符

ASCLL 表

ascll值 ---> 控制字

class demo{
    public static void main(String[] args){
        char a = 97;
        char b = 'b';
        System.out.println(a); // a
        System.out.println(b); // b
    }
}

 

控制字 ---> ascll值

public class Demo {
    public static void main(String[] args){
        char c = 97;
        System.out.println(c); // a

        int i = Integer.valueOf(c);
        System.out.println(i); // 97
    }
}

 

字符串

  • String

声明时,不能使用 ' ' 。 

class demo{
    public static void main(String[] args){
        String str1 = "Hello World";
        String str2 = "Hello Java";
        System.out.print(str1);
        System.out.print(str2);
    }
}

任何类型与字符串拼接时,都会变成字符串类型。

class demo{
    public static void main(String[] args){
        int i = 1;
        String result = "" + i;
        System.out.println(result);
    }
}

数据类型的方法:https://www.cnblogs.com/py-peng/p/13660571.html

 

数据类型转换

  • 自动:内置帮你自动转,大的往小的转。
  • 强制:(强制类型)强制的值
public class Demo {
    public static void main(String[] args){
        // 数据类型自动转换
        // int ---> double
        int a = 123;
        double b;
        b = a;
        System.out.println(b); // 123.0

        // 强制数据类型转换
        int c;
        double d = 321.2;
        c = (int)d;
        System.out.println(c); // 321
    }
}

 

算术运算符

+    求和

-     求差

*     求积

/     求商

%   求余

++  递增

--    递减

 

如果 ++再前,则优先级为高,所以先运算。

class demo{
    public static void main(String[] args){
        int a = 100, b, c;
        b = a++;
        a = 100;
        c = ++a;
        System.out.println(b); // 100 先赋值,后运算
        System.out.println(c); // 101 先运算,后赋值
    }
}

 

运算符

赋值运算符

=      直接赋值

+=    求和后赋值

-=     求差后赋值

*=     求积后赋值

/=     求商后赋值

%=   求余后赋值

 

关系运算符

>      大于

<      小于

>=    大于等于

<=    小于等于

==    等于

!=     不等于

 

逻辑运算符

&&    与

||       或

!        非

 

三元运算符

https://www.cnblogs.com/py-peng/p/12547668.html

 

判断语句

if-else

语法:

if (条件){

  逻辑1

} else if (条件){

  逻辑2

}else{

  逻辑3

}

 

实例:

import java.util.Scanner; // 导入

class Demo{
    public static void main(String[] args){
        System.out.print(">>>");
        Scanner input = new Scanner(System.in); // 创建 Scanner 对象
        int num = input.nextInt(); // 接收用户输入
        if (num >= 80){
            System.out.println("高分!");
        }else if(num >= 60){
            System.out.println("及格了!");
        }else{
            System.out.println("需继续努力!");
        }
    }
}

 

switch

语法:

switch (变量){

  case 值:

    逻辑1

    break

  default:

    逻辑2

    break

}

 

实例:

import java.util.Scanner; // 导入

class Demo{
    public static void main(String[] args){
        System.out.print(">>>");
        Scanner input = new Scanner(System.in); // 创建 Scanner 对象
        int num = input.nextInt(); // 接收用户输入
        switch (num){
            case 123:
                System.out.println("天王盖地虎");
                break;
            case 456:
                System.out.println("小鸡炖蘑菇");
                break;
            default: // 分支不存在
                System.out.println("没有该暗号");
                break;
        }
    }
}

 

循环语句

while

判断表达式是否成立,成立运行 while 语句中的代码。

语法:

while (进入条件){
  逻辑
}

 

实例:

class Demo{
    public static void main(String[] args){
        int num = 1, result=0;
        while (num < 101){
            result += num;
            num++;
        }
        System.out.println(result);
    }
}

 

do-while

选运行 do 中的代码,再去判断 while 表达式是否成立。

语法:

do {

逻辑

} while(进入条件)

 

实例:

class Demo{
    public static void main(String[] args){
        do{
            System.out.println("第一次进入,不管进入条件");
        }while (false);
    }
}

 

for

语句:

for (初始部分; 循环条件; 迭代部分){

  逻辑

}

 

实例:

class Demo{
    public static void main(String[] args){
        int num = 0;
        for (int i=1; i<101; i++){
            num += i;
        }
        System.out.println(num); // 5050
    }
}

也可以提前定义,初始的部分。

class Demo{
    public static void main(String[] args){
        int num = 0, i=1;
        for (; i<101; i++){
            num += i;
        }
        System.out.println(num); // 5050
    }
}

 

break与continue

表示退出,折回。

class Demo{
    public static void main(String[] args){
        int num = 10;
        while (true){
            num --;
            if (num == 0){
                break; // 退出
            }else if (num != 1){
                continue; // 折回
            }
            System.out.println("我只会执行一次!");
        }
    }
}

 

递归

  • 必须要有一个退出条件,不然死循环。
  • 递归能完成的 for 循环也可以完成。
  • 递归的效率会低,但代码简洁。

实现阶乘

class Demo{
    // 程序入口
    public static void main(String[] args){
        System.out.println(mul(10)); // 3628800
    }

    // 1 * 2 * 3 ... num
    public static int mul(int num){
        if (num == 1){
            return 1;
        } else {
            return mul(num-1) * num;
        }

    }
}

 

数组

快速使用

class Demo{
    public static void main(String [] args){
        String[] arr = new String[3]; // 该数组最大值为:3
        arr[0] = "a"; // 设值
        arr[1] = "b";
        arr[2] = "c";
        for (int i = 0; i < arr.length; i++) {
            String s = arr[i]; // 取值
            System.out.println(s);
        }
    }
}

 

创建方式

class Demo{
    public static void main(String [] args){
        // 先声明,再分配空间
        int[] arr1;
        arr1 = new int[3];

        // 声明并分配空间
        int[] arr2 = new int[3];

        // 声明并赋值(1)
        int[] arr3 = new int[]{11,22,33};
        
        // 声明并赋值(2)
        int[] arr4 = {11,22,33}; // 不可换行
    }
}

 

默认值

如果没给数组的传值,会使用以下默认值:

  • 整数:0
  • 小数:0.0
  • 字符:\u0000
  • 布尔:false
  • 其它:null

 

java基础(二)

https://www.cnblogs.com/py-peng/p/13661587.html

posted @ 2020-11-08 16:50  Sun先生  Views(152)  Comments(0Edit  收藏  举报