Java基础 每日Study

Java后端面试7天冲刺:系统化复习八股文与场景题实战 Java作为企业级应用开发的核心语言,其知识体系涵盖语言基础、并发编程、JVM虚拟机、数据库与主流框架等多个维度。理解这些技术的底层原理,如JVM内存模型、Spring IOC容器机制、MySQL索引与事务实现,是构建高性能、高可用后端系统的基石。掌握这些原理不仅能提升代码质量,更能有效解决分布式场景下的并发控制、数据一致性等工程难题。对于即将参加Java后端岗位面试的开发者而言,如何高效整合这些零散且深度的知识点,并通过场景题训练将理论转化为解决实际问题的能力,成为面试成功的关键。本文聚焦于Java并发编 阅读详情

快捷输入

pvsm              public static void main(String[] args)
sout              System.out.println();
5.fori            for (int i = 0; i < 5; i++)
array.fori        for (int i = 0; i < array.length; i++)

Scanner

1 导包

import java.util.Scanner;
导包的动作必须出现在类定义的上边

2 创建对象

Scanner sc = new Scanner(System.in);
上面这个格式里面,只有sc是变量名,可以变,其它的都不允许变

3 接收数据

int i = sc.nextInt();//数字
String str=sc.next();//字符串
上面这个格式里面,只有i是变量名,可以变,其它的都不允许变

在这里插入图片描述
在这里插入图片描述
Random
作用 :用于产生一个随机数

1 导包

import java.util.Random;
导包的动作必须出现在类定义的上面

2 创建对象

Random r = new Random();
上面这个格式里面,r是变量名,可以变,其它的都不允许变

3 获取随机数

int number = r.nextInt(10);//获取数据的范围:[0,10)包括0,不包括10
上面这个格式里面,number是变量名,可以变,其它的都不允许变

数组定义

   int[] a =new int[10];//动态初始化
   String[] b=new String[1010];

面向过程与面向对象

面向过程(强调步骤):当需要实现一个功能的时候,每一个具体的步骤都要亲历亲为,详细处理每一个细节

面向对象(强调对象):当需要实现一个功能的时候,不关心具体的步骤,而是找一个已经具有该功能的人,来帮我做事

面向对象思想是一种更符合我们思考习惯的思想,将复杂事情简单化,从执行者转变为指挥者,面向对象的语言,包含三大特征:封装、继承和多态
在这里插入图片描述

package face;

import java.util.Arrays;

public class demo {
    public static void main(String[] args) {
        int[] array={1,2,3,4,5};

        //打印出这样格式的数组[1, 2, 3, 4, 5]
        //使用面向过程,每一步都要亲历亲为
        System.out.println("面向过程");
        System.out.print("[");
        for (int i = 0; i < array.length; i++) {
            if(i==0)
                System.out.print(array[i]);
            else
                System.out.print(", "+array[i]);
        }
        System.out.println("]");

       //使用面向对象
        //找一个JDK给我们提供好的Arrays类
        //其中有一个toString方法,直接就能把数组编程想要的格式字符串
        System.out.println("面向对象");
        System.out.println(Arrays.toString(array));//面向对象直接可以实现
    }
}

在这里插入图片描述

类与成员变量

public class Student {
    String name;
    int age;
    public void eat() {
         System.out.println("吃饭");
    }
    public void sleep() {
        System.out.println("睡觉");
    }
    public void study() {
        System.out.println("学习");
    }
}
public class demo {
    public static void main(String[] args) {
        Student stu =new Student();//定义一个stu类
        System.out.println(stu.name);
        System.out.println(stu.age);
        stu.name="aaa";
        stu.age=18;//name,age都是成员变量
        System.out.println(stu.name);
        System.out.println(stu.age);
    }
}

在这里插入图片描述

ArrayList创建与使用

import java.util.ArrayList;

public class demo01 {
    public static void  main(String[] args) {
     ArrayList<String> list=new ArrayList<>();//创建
        System.out.println(list);
        list.add("abc");
        System.out.println(list);
        list.add("abcc");
        list.add("abccc");
        list.add("abccccc");
        System.out.println(list);
    }
}

在这里插入图片描述

package fass;

import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
/*
ArrayList当中的常用方法
public boolean add(E e):向集合当中添加元素,参数的类型和泛型一致,返回值代表是否添加成功
public E get(int index):从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素
public E remove(int index):删除元素,参数是索引编号,返回值就是被删掉的元素
public int size():获取集合的尺寸长度,返回值是集合中包含的元素个数
 */
public class demo01 {
    public static void  main(String[] args) {
     ArrayList<String> list=new ArrayList<>();
        System.out.println(list);
        //向集合中添加元素:add
        //对于ArrayList添加是一定成功的,所以返回值可用可不用
        //但是对于其它集合来说,add添加动作不一定成功
        boolean success =list.add("张三");
        System.out.println(list);
        System.out.println("添加的动作是否成功:"+success);
        list.add("李四");
        list.add("王五");

        //获取查询
        String name=list.get(2);
        System.out.println("2号:"+name);

        //删除
        String name1=list.remove(1);
        System.out.println("删除:"+name1);
        System.out.println(list);
        //计算ArrayList的长度,也是元素个数
        int l=list.size();
        System.out.println("长度:"+l);
        System.out.println("-----------");
        //遍历ArrayList
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }
}

统计字符串字符出现的次数

ToCharArray( )的用法:将字符串对象中的字符转换为一个字符数组。

package pac;

import java.util.Scanner;

public class clas {
    public static void main(String[] args) {
        String strin=new String();
        System.out.println("输入一个字符串:");
        Scanner sc=new Scanner(System.in);
        
        String str=sc.next();//从键盘输入一个字符串,但这个字符串不是数组
        
        char[] str1=str.toCharArray();//转换为数组才可以用下面的if语句
        
        int ans=0,ans1=0,ans2=0,ans3=0;
        for (int i = 0; i < str.length(); i++) {
            if (str1[i]>='A'&&str1[i]<='Z')
                ans++;
            else if (str1[i]>='a'&&str1[i]<='z')
                ans1++;
            else if (str1[i]>='0'&&str1[i]<='9')
                ans2++;
            else
                ans3++;
        }
        System.out.println("大写:"+ans+"小写:"+ans1+"数字:"+ans2+"其它:"+ans3);
    }
}

Sort用法:对数字或字符串排序

 String str="sbhjbjhbdefbjfvbfnhjbf";//字符串
       char[] str1=str.toCharArray();//转换为字符数组
       Arrays.sort(str1);//对字符数组进行排序

Date计算日期类问题

public static void main(String[] args) throws ParseException {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入出生日期:");
        String birthday=sc.next();//获取字符串
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");//注明输入的日期的格式
        Date bir=sdf.parse(birthday);//使用DateFormat的parse把字符串的出生日期解析为Date格式
        long birtime=bir.getTime();//转换为毫秒值

        long todaytime=new Date().getTime();//获取当前时间,转换为毫秒值
       // System.out.println(todaytime);
        long time=todaytime-birtime;
        System.out.println(time/1000/60/60/24);//计算天数
    }
public class Test01 {
    public static void main(String[] args) throws ParseException {
        //空参构造方法
        Date d=new Date();
        System.out.println(d.toLocaleString());//根据本地格式转换日期对象
        Date d1=new Date(3000L);
        System.out.println(d1.toLocaleString());
        
        //创建日期格式化对象
        //按照指定格式格式化日期对象
         SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
         String format=sdf.format(d);
         System.out.println(format);
         //根据指定格式解析字符串
         String str="2022-02-02 02:02:02";//格式需与SimpleDateFormat一样
         Date parse=sdf.parse(str);
         System.out.println(parse);
    }
}

Calendar类的常用成员方法

 //public int get(int field);返回给定日历字段的值
    //public void set(int field,int value);将给定的日历字段设置为给定值
    //public abstract void add(int field,int amount);根据日历的规则,为给定的日历添加或减去指定的时间量
    //public Date getTime();返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)
    public static void kkk(){
        //使用getInstance方法获取Calendar对象
        Calendar c= Calendar.getInstance();
        c.set(Calendar.YEAR,2022);//自定义设置
        c.set(Calendar.MONTH,4);
        c.set(Calendar.DATE,1);
        c.add(Calendar.YEAR,2);//将年份+2
        c.add(Calendar.YEAR,-3);//将年份-3
        int year=c.get(Calendar.YEAR);//获取年
        System.out.println(year);
        int month=c.get(Calendar.MONTH);//获取月
        System.out.println(month);//西方0-11月,东方1-12月
        //int date=c.get(Calendar.DATE);//月中的某一天 or 日
        int date=c.get(Calendar.DAY_OF_MONTH);//月中的某一天
        System.out.println(date);
        int hour=c.get(Calendar.HOUR);//获取时
        System.out.println(hour);
        int minute=c.get(Calendar.MINUTE);//获取分
        System.out.println(minute);
        int second=c.get(Calendar.SECOND);//获取秒
        System.out.println(second);
    }
    public static void main(String[] args) throws ParseException {
        //使用getInstance方法获取Calendar对象
        Calendar c= Calendar.getInstance();
        kkk();
    }

System类

1.currentTimeMillis()方法

作用:获取当前系统毫秒值时间

2.arraycopy()方法

作用:复制数组

StringBuilder类

1.构造方法

StringBuilder(); 创建一个空的字符串缓冲区对象

StringBuilder(String s); 根据传入的内容创建一个空的字符串缓冲区对象

2.成员方法

StringBuilder append(Object obj); 添加内容

StringBuilder reverse(); 反转内容

String toString(); 将缓冲区转为字符串

定义和使用含有泛型的类

//写为E表示不卡类型(自我理解,有错请指出)
public class General<E> {
    private E name;

    public E getName() {
        return name;
    }

    public void setName(E name) {
        this.name = name;
    }
}
public static void main(String[] args){

      //General g=new General();
      //g.setName("只能是字符串");
      //Object obj = g.getName();
        //类型可以在下面自己定义,E不卡类型
        General<Integer> g1 =new General<>();
        g1.setName(1);
        Integer name=g1.getName();
        System.out.println(name);

        General<String> g2 =new General<>();
        g2.setName("小明");
        String name1=g2.getName();
        System.out.println(name1);

    }
泛型的上限限定:?extends E  
代表使用的泛型只能是E类型的子类/本身
public static void getElement1(Collection<? extends Number>coll){}

泛型的下线限定:?super E 
代表使用的泛型只能是E类型的父类/本身
public static void getElement2(Collection<? super Number>coll){}
Java后端面试备战指南:AI时代下的核心能力提升与场景题破解 这次我们来看一个Java程序员在AI冲击下的面试攻略。这不是一个具体的开源项目,而是一套应对当前技术变革和就业市场的系统性方法。核心目标很直接:帮助Java后端开发者,在AI工具普及、面试要求提高的背景下,更高效地准备面试,提升技术深度,从而找到工作或实现涨薪。 这篇文章的重点不是空谈概念,而是提供一套可落地、可验证的“作战方案”。我们会拆解从Java基础、并发编程、JVM、MySQL到Spring全家桶等核心模块的复习策略,并重点分析如何应对越来越流行的“场景题”和“八股文”结合的新型面试。无论你是应届生 阅读详情

相关推荐

大模型训练方法全面解析:SFT、RFT、TRPO、DPO、PPO、GRPO、RLH、RLHF技术深度剖析

大模型训练方法全面解析 本文系统介绍了当前主流的大模型训练和对齐技术,包括监督微调(SFT)、拒绝采样微调(RFT)、信任域策略优化(TRPO)、直接偏好优化(DPO)、近端策略优化(PPO)等。这些方法各有特点:SFT简单高效但数据依赖性强;RFT通过质量筛选提升输出质量;TRPO训练稳定但计算复杂;PPO是RLHF核心算法,平衡探索与利用。文章详细分析了各方法的实现原理、优势劣势及适用场景,为开发者选择合适的大模型训练策略提供参考。

2796

Java基础知识(三)

1、在键盘上输入数据: 1、为了方便灵活的使用参与运算的操作数,java提供了一个工具给我们使用,让我们可以手动输入一些数据。 Scanner(目前来说,只需要掌握如何使用格式即可) 具体操作; 导包; import java.util.Scanner; 创建键盘录入对象; Scanner sc =new Scanner(System.in); 调用方法获取键盘录入的数据(有返回值的) sc.nextInt()//从键盘上获取一个int类型的数据; sc.next()//从键盘上获取

L缶神的博客 2285

QGIS插件实战:用百度地图AOI数据做个城市公园分析,从下载到出图全记录

本文详细介绍了如何利用QGIS的百度地图AOI插件进行城市公园分析,从插件安装、数据获取到空间分析与可视化全流程。通过实战案例演示了公园面积统计、服务范围缓冲区分析及专题地图制作,帮助用户高效完成城市绿地评估工作。

weixin_30790841的博客 556

java语言基础(二)

Java语言基础(逻辑运算符的基本用法) 逻辑运算符有哪些 &(并且) , |(或者) , !(非) , ^(异或) , &&(短路与) , ||(短路或)注意事项: a:逻辑运算符一般用于连接boolean类型的表达式或者值。 在Java中我们要表示一个数大于3并且小于6 ,不可以写成3<x<6,应该写成 x>3 & x<6 。 b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。 ...

siriusone的博客 999

StarCCM+ 导入STL几何模型进行仿真

通过 Import Surface Mesh 的方法导入 STL 文件进行仿真

薛定谔的alpha狗 6130

STM32通过ESP8266连接机智云APP(第二讲,烧录固件并测试)

今天与大家分享STM32通过ESP8266连接机智云APP,并完成数据的上传下发第二讲。带大家一起烧录机智云固件到ESP8266并且将其通过机智云串口助手与APP进行测试。

qq_63267523的博客 1425

说说sc.next()、sc.nextInt()和sc.nextLine()

1、next和nextInt以空格或回车换行作为结束 Scanner sc = new Scanner(System.in); System.out.println("请输入你的年龄"); int age = sc.nextInt();//空格或回车作为结束 System.out.println("年龄"+age); 操作结果: 请输入你的年龄 12 34 年龄12 2、n...

qq_43356111的博客 2万+

6层高速PCB设计实战:BGA布局与阻抗匹配关键解析

本文深入解析6层高速PCB设计中BGA布局与阻抗匹配的关键技术。通过实战经验分享,详细介绍了六层PCB层叠结构的选择与优化、BGA器件布局技巧、阻抗匹配的实战经验以及高速布线技巧,帮助工程师提升PCB设计水平,确保信号完整性和电源完整性。

weixin_28481133的博客 368

java的输入输出

Scanner sc = new Scanner(System.in); 1、输入一个整数: int n = sc.nextInt(); 2、 输入字符串(含空格),遇到回车表示一个输入结束 String str = sc.nextLine(); 如果想把这个输入转换成数组,可以使用 String[] str1 = str.split(" “); 双引号里填隔开的符号。 比如输入是 1,2 ,3, 4, 5。 那么 String[] str1 = str.split(” , "); 这样就将输入的字符

YangYoung_的博客 2908

Vue+OpenLayers6一本通,OpenLayers6完整教程大全,OpenLayers6全知全解,OpenLayers6入门、实战、扩展进阶三合一专栏目录汇总

Gis开发入门,OpenLayers、Leaflet、Maplibre-gl和Cesiumjs地图引擎介绍以及几种地图服务vms、vmts介绍OpenLayers介绍,相比较其他地图引擎有什么优点OpenLayers7.x版本和6.x版本有什么区别,是否需要升级到OpenLayers7版本?OpenLayers6实战:OpenLayers创建自定义控件,以创建一个地图复位控件为例OpenLayers6实战,OpenLayers创建自定义鹰眼控件,自定义鹰眼控件样式,调整鹰眼控件位置、大小、文字和按钮等样式。

GIS技术方向,GIS地图技术分享(GIS入门、Openlayers教程、Leaflet教程),做最好的GIS地图开发教程。关注博主公众号:eguid 2199

基于STM32、HAL库的MCP4013T-103E/CH 数字电位器驱动程序设计

define MCP4013_I2C_ADDR (0x5F << 1) // HAL库使用7位地址左移1位,或直接使用0xBE/0xBF。#include "i2c.h" // 包含你的I2C初始化相关的头文件,例如由CubeMX生成的 i2c.h。大于127的值会被截断。// MCP4013的读操作:主机发起读取请求,从机返回当前滑片位置的一个字节。// 使用HAL_I2C_Master_Transmit直接发送数据。// 使用HAL_I2C_Master_Receive读取一个字节。

corlin6688的博客 126

Java基础——String类

Java基础——String类

qq_58390802的博客 1403

淘宝滑块验证码破解:Python模拟鼠标轨迹过关详解

本文全面解析了淘宝滑块验证码的破解流程,从机制分析、图像处理、轨迹模拟到自动化实现,提供了完整的Python解决方案。随着2026年风控技术的升级,单纯依靠轨迹模拟已经难以达到高通过率,未来趋势是结合强化学习生成更自然的轨迹,并利用深度神经网络进行端到端的验证码绕过。此外,各大平台正逐步推广"无感验证"和"行为式验证码",将验证融入到用户正常操作中,这对爬虫技术提出了更高的挑战。技术本身是中立的,关键在于使用者的目的。希望本文能帮助开发者更好地理解验证码对抗技术,从而设计出更安全的防御系统。

2201_76125261的博客 97

Java study 细菌繁殖

Java study 细菌繁殖 代码如下 import java.util.Scanner; public class Main24 { public static void main(String[] args) { Scanner cin = new Scanner(System.in); //System.out.println("请输入行数:"); i...

日拱一卒,功不唐捐 976

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

探索CS-Study:开启你的技术提升之旅!

探索CS-Study:开启你的技术提升之旅! 去发现同类优质开源项目:https://gitcode.com/ 项目简介 CS-Study 是一个由三位开发者共同维护的开源项目,致力于每周进行系统性的计算机科学(CS)学习和算法实践。这个项目不仅提供了清晰的学习计划,还包含了丰富的学习资源,适合所有想要深化技术理解、提升编程技能的人。 通过参与这个项目,你将能够: 每天早上接触到新的CS主题和算...

gitblog_00035的博客 227

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

B站狂神说 study-Spring笔记-每日更新

Study-Spring 1.简介 1.1 拓展 Spring Boot 一个快速开发的脚手架 基于SpringBoot可以快速开发单个微服务 约定打与配置 Spring Cloud 基于SpringBoot实现 大部分公司在进行SpringBoot进行快速开发,学习SpringBoot的前提,需要完全掌握Spring和SpringMVC。承上启下的作用。 弊端:发展了太久后,违背了以前的理念!配置十分繁琐。人称配置地狱 2.IOC理论推导 ​ 1.UserDao ​ 2.UserDaoI

weixin_44542261的博客 763

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

HF study day06

KT作业06

LuXi-Tu的博客 286

Java零基础到项目实战:完整学习路线与开发环境搭建指南

Java作为面向对象编程语言的核心概念,通过封装、继承、多态三大特性实现代码复用和模块化设计。其原理基于JVM虚拟机实现跨平台运行,具备自动内存管理和丰富的类库支持。在技术价值方面,Java的强类型检查、异常处理机制和集合框架为大型企业级应用提供了稳定基础。应用场景涵盖Web开发、移动应用、大数据处理等多个领域,特别适合零基础学习者通过系统化路线掌握。集合框架作为Java核心技术,包含List、Set、Map等数据结构,为数据存储和操作提供高效解决方案。面向对象编程思想贯穿整个学习过程,从类与对象的定义到继

358

Java零基础入门到项目实战:完整学习路线与开发环境搭建

Java作为面向对象编程语言的核心概念包括类、封装、继承和多态等特性,其原理基于JVM虚拟机实现跨平台运行。在软件开发领域,Java的技术价值体现在企业级应用开发、Android移动开发和大数据处理的广泛适用性。通过集合框架、异常处理等核心机制,Java能够构建稳定可靠的应用系统。在实际应用场景中,从环境搭建到项目实战的完整学习路径尤为重要,特别是对于零基础学习者而言,合理的学习路线规划和每日学习计划能够显著提升学习效率。本文提供的Java学习路线涵盖了从基础语法到框架应用的完整内容,通过学生管理系统等实战

weixin_30843605的博客 556

48、Spark SQL之与Spark Core整合之每日top3热点搜索词统计案例实战

一、概述1、需求分析数据格式: 日期 用户 搜索词 城市 平台 版本 需求: 1、筛选出符合查询条件(城市、平台、版本)的数据 2、统计出每天搜索uv排名前3的搜索词 3、按照每天的top3搜索词的uv搜索总次数,倒序排序 4、将数据保存到hive表中 ###数据 keyword.txt 2018-10-1:leo:water:beijing:android:1.0 2018...

weixin_30830327的博客 210

每日练习

/* * 利用面向对象的方法,设计类Circle计算园的面积 * */ public class TestCircle { public static void main(String[] args) { Circle c1 = new Circle(); //c1.setR(2.0); Sys...

weixin_34013044的博客 183

2026年软考中级——软件设计师备考全攻略:从零基础到一次通关的实战心法

本文提供2026年软考中级软件设计师考试的全面备考指南,涵盖考试结构、核心考点、机考环境适应及高效学习策略。重点解析计算机组成原理、数据结构等五大金刚考点,并分享零基础考生的阶段式学习规划和实战技巧,助力考生一次通关。

weixin_30265103的博客 317

coding-interview-university 面试学习计划快速上手指南

coding-interview-university 是一份为软件工程师面试准备的完整计算机科学学习计划。作者靠这份计划通过了 Amazon 的面试,整个仓库本质上是"待办清单 + 资源链接 + 学习顺序":从上到下逐项完成,学完就能应对大多数软件公司的技术面试。项目是纯文档仓库,不需要安装环境,打开就能学。 ## 这个项目适合谁、解决什么问题 适合这几类人: - 有一点编码基础(会变量、

gitblog_00474的博客 528

零基础Python动画教程:748集从入门到实战完整学习路径

Python作为当前最流行的编程语言,其简洁的语法和丰富的生态使其成为零基础学习者的首选。编程概念通过动画形式直观展示,能够有效降低学习门槛,让抽象的逻辑变得生动易懂。在工程实践中,Python广泛应用于Web开发、数据分析和人工智能等领域,具备很高的技术价值。对于初学者而言,一套完整的动画教程能够系统性地覆盖从基础语法到项目实战的全流程,特别是748集的完整学习路径,确保了知识体系的连贯性和深度。通过环境搭建、函数模块、面向对象编程等核心内容的学习,配合实际代码示例和调试技巧,学习者能够快速掌握Pytho

weixin_30616969的博客 464

Android Study 之 玩转GreenDao 3.2.2 点滴提升逼格~

LZ-Says:撸文不易,且行且珍惜~ 每日一笑:        假如生活欺骗了你,找50个程序员问问为什么编程;        假如生活让你想死,找50个程序员问问Bug改完了没有;        假如你觉得生活拮据,找50个程序员问问工资涨了没有;        假如你觉得活着无聊,找50个程序员问问他们一天都干了什么! 前言端午三天,去天

静心 Study 2210
上一篇: 快手2020校园招聘秋招笔试--工程A试卷
下一篇: 软件工程概论期末考试题
Piink
博客等级 码龄7年 119粉丝 195原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值