Java基础知识复习

743 篇文章 3 订阅
742 篇文章 2 订阅
本文详细介绍了Java编程的基础知识,包括变量的声明与赋值、数据类型的分类(如整数、小数、布尔、字符及字符串、数组、对象)以及类型转换的规则。同时,提到了包装类的概念以及基本数据类型与包装类间的转换。此外,还展示了代码示例,涉及变量命名、数据类型使用、强制类型转换、三目运算符、键盘输入、条件判断和循环结构等。
摘要由CSDN通过智能技术生成

目录

Java基础知识复习

一、变量

  • 概念:存储在计算机内存中的一块位置,是存储数据的基本单位
  • 组成部分:数据类型,变量名称,变量值
  • 定义变量的步骤:
    1. 声明
    2. 赋值(变量的值必须和数据类型一致)
# 定义方式一(声明并赋值)
    String s = 'Holle world!';
    # 定义方式二(先声明后赋值)
    String s;
    s = 'Holle wolrd! ';
    # 定义方式三(多个同类型的变量定义赋值)
    int a,b;
    a=b=0;

二、数据类型

  • 基本数据类型:

    1. 整数
    2. 小数
    3. 布尔
    4. 字符
  • 应用数据类型

    1. 字符串
    2. 数组
    3. 对象
  • 整数

    |类型|字节|取值范围(二进制)|取值范围(十进制)|

    |:-:neutral_face::-:neutral_face::-:neutral_face::-:neutral_face:

    |byte| 1字节 |-2^7 ~ 2^7-1 |-128 ~ 127|

    |short| 2字节 |-2^15 ~ 2^15-1 |-32768 ~ 32767|

    |int |4字节 |-2^31 ~ 2^31-1 |-2147483648 ~ 2147483647|

    |long |8字节 |-2^63 ~ 2^63-1 |-9223372036854775808 ~ 9223372036854775807|

  • 小数

类型字节负数取值范围整数取值范围
float4字节-3.4E+38 ~ -1.4E-451.4E-45 ~ -3.4E+38
double8字节-1.7E+308 ~ 4.9E-3244.9E-324 ~ 1.7E+308
  • 布尔
类型字节取值范围描述
Boolean1字节true、false真、假
  • 字符
类型字节取值范围
char2字节0 ~ 65535

** 特殊字符: ** 转移字符(换行符、制表符、引号、斜杠、单引号)

转义字符描述
\n换行符
\t制表位(缩进等于Tab键缩进)
\反斜杠
\’单引号
""双引号

注意:其他字符则对应ACII编码表:

ASCII码对照表

  • 字符串
类型取值范围
String任何" "之间的字面值
  • 数组 (引用数据类型)
  • 对象 (引用数据类型)

三、类型转换

自动类型转换:

两种类型互相兼容,目标类型大于源类型

char a = 98;
注意:输出a的值为b;

***强制类型转换: ***

两种类型转换,目标类型小于源类型

注意:通过在源类型前面,加上 (目标类型) ,达到强制转换的目的,但是,有可能失去精度。

例如:小数强转为整数,则失去精度,小数点之后的值,无法保留

*** 强制类型转换规则: ***

- 整数长度足够,数据完整。
    - 例:int i = 100; byte b = (byte)i; //b = 100
- 整数长度不够,数据截断
    - 例:int = 10000; byte b = (byte)i; //b = 16(符号位发生变化,可能为负数)
- 小数强转整数,数据截断
    - 例:double d = 2.5; int i = (int)d; //i = 2(小数位舍掉)
- 字符整数互转,数据完整
    - 例:char c = 65; int i = c; //i = 65;
- 特殊: boolean的取值为true、false,不可与其他类型转换

包装类:8种基本数据类型对应着的一个类,此类即为包装类

基本数据类型 包装类 及String之间的相互转换

public void demo1(){
        int i = 1;
        System.out.print(i);
        boolean b = false;
    }

测试代码

public class demo_1 {public static void main(String[] args) {
    char a = 98;
    System.out.println(a);

    //关于变量的练习
    char b = 'c';
    System.out.println(b);

    //关于变量的命名
    int aa = 21;
    int aaa;
    aaa = 22;
    int ab, ac = 0;
    int abb, acc;
    abb = 0;
    acc = 0;

    //关于数据类型的练习

    //整数;
    int demo1 = 10;
    //小数(浮点数)
    float demo2 = 3.14f;
    //布尔型
    boolean demo3 = true;
    boolean demo15 = !demo3;
    //字符型
    char demo4 = a;
    //字符串
    String demo5 = "hello world";
    //数组
    int[] demo6 = {1, 23, 4, 5};
    int[] demo7 = new int[]{1, 2, 3, 4, 5, 6, 67};
    int[] demo8 = new int[4];
    demo8[0] = 2;
    demo8[1] = 3;
    //对象
    Java_demo_helloworld demo9 = new Java_demo_helloworld();


    //强制类型转换
    int demo10 = 100;
    byte demo11 = (byte) demo10;
    long demo12 = 10000000;
    int demo14 = (int) demo12;
    short demo13 = (short) demo14;
    System.out.println();

    //三目运算符
    System.out.println(demo3 != true ? demo3 = !demo3 : demo13);

    //键盘输入
    Scanner demo16 = new Scanner(System.in);
//        int demo17 = demo16.nextInt();
//        System.out.println(demo17);


    /** if判断语句的使用 **/
    Scanner demo18 = new Scanner(System.in);
//        int demo19= demo18.nextInt();
//        if ( demo19>='0'&& demo19<='9'){
//            System.out.println("不是数字");
//        }else {
//            System.out.println("输入的是数字");
//            if (demo19>=1000){
//                System.out.println("输入的数字大于1000");
//            }
//
//        }

    /** switch 的使用 */
//        switch (demo18.nextInt()){
//            case 1: System.out.println("这是1月");break;
//            case 2: System.out.println("这是2月");break;
//            case 3: System.out.println("这是3月");break;
//            case 4: System.out.println("这是4月");break;
//            case 5: System.out.println("这是5月");break;
//            case 6: System.out.println("这是6月");break;
//            case 7: System.out.println("这是7月");break;
//            case 8: System.out.println("这是8月");break;
//            case 9: System.out.println("这是9月");break;
//            case 10: System.out.println("这是10月");break;
//            case 11: System.out.println("这是11月");break;
//            case 12: System.out.println("这是12月");break;
//        }
    /** 循环的使用 **/
//        int count=0;
//        while (true){
//            count++;
//            if (count==100){
//                break;
//            }else {
//                System.out.println(count+1);
//            }
//        }
    /** do while 的使用 **/
//        int count = 0;
//        int demo20;
//        do {
//            demo20 = count++;
//            if (count==100){
//                break;
//            }else {
//                System.out.println(count+1);
//            }
//        } while (count != demo20);

}
    //定义函数
    class fun{
        public fun(){

        }
        public  void in(){
            int a,b = 0;
            a =2;
            int c = a + b;

        }
    }
}

更多资料可点击下方公众号 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值