数据类型与运算符

C语言总结(数据类型、运算符与表达式) C语言总结第一章、C语言概述格式特点结构特点函数与主函数函数的组成程序语句注释预编译处理命令32个关键字:(由系统定义,不能重作其他定义)9种控制语句:34种运算符:数据类型第二章、算法算法的特性三种基本结构和改进的流程图顺序结构选择结构循环结构当型结构直到型结构结构化程序设计方法第三章、数据类型、运算符与表达式数据类型数据类型总表基本数据类型标识符常量整型常量(整常数)实型常量(实数或浮点数)字... 阅读详情

1.变量和类型

  变量指的是程序运行时可变的量,相当于开辟了一块内存空间来保存一些数据。

  类型则是对变量的种类进行了划分,不同的类型的变量具有不同的特性。

   我们所讨论的“变量”主要和我们的“内存”这样的设备密切相关。

         

1.1整型变量

      基本的语法格式

    int  变量名= 初始值;

代码实例

      int num=5;  //定义一个整型变量

     System.out.println(num);

注意事项:

      1.int 表示变量的类型是一个整型

      2.变量名是变量的标识,后续都是通过这个名字来使用变量

      3.java中=表示赋值(和数字不一样),意思是给变量设置一个初始值。

      4.初始值操作是可选的,但是建议创建变量的时候都显式初始化。

      5.最后不要忘记分号,否则会编译失败。

      6.//表示注释。 注释作为代码的解释说明部分,不参与编译运行。

在java中,一个变量占4个字节。和操作系统没有直接关系。

     什么是字节?

       字节是计算机中表示空间大小的基本单位。 

      计算机使用二进制表示数据,我们认为8个二进制位(bit)位一个字节(Byte)

      我们平时的计算为8GB内存,意思是8G字节。

      其中 1KB= 1024 Byte,1MB=1024KB,1GB=1024MB.

     所以8GB相当于80多亿个字节

4个字节表示的数据范围是 -2的31次方 到 2的31次方减1  也就是大概 -21亿到+21亿

   使用一下代码查看java中的整型数据范围:

     System.out.println(Integer.MAX_VALUE);  //int的最大值

     System.out.println(Integer.MIN_VALUE);   //int的最小值

如果运算的结果超出了Int的最大范围,就会出现溢出的情况

       int   maxvalue=Integer.MAX_VALUE;

       System.out.println(maxValue+1);

       int   minvalue=Integer.MIN_VALUE;

       System.out.println(minValue-1);

1.2长整型变量

    基本语法格式:

      long  变量名 =初始值;

   代码示例

          long num=10L; //定义一个长整型变量。

          System.out.println(num);

   注意事项:

      1.基本语法格式和创建int变量基本一致,只是把类型修改成long

      2.初始化设定的值位10L,表示一个长整型的数字

      3.使用10初识化也可以,10的类型是int,10L的类型是long,使用 10L或者 10l 更好一些

java中long类型占8个字节,表示数据范围 -2的63次方 至 2的63次方减1

  使用以下代码查看 Java 中的长整型数据范围:

      

System.out.println(Long.MAX_VALUE);
System.out.println(Long.MIN_VALUE)
   
// 运行结果
9223372036854775807
-9223372036854775808  
这个数据范围远超过int的表示范围,足够绝大部分的工程场景使用

      1.3双精度浮点型变量

基本语法格式

       double 变量名=初始值;

代码实例: 

     double  num=1.0;

   System.out.println(num)

神奇的代码1:

         int a=1;

         int b=2;

System.out.println(a/b);   //执行结果   0

在java中,int除以 int的值仍然是int(会直接舍弃小数部分)。

如果想得到 0.5,需要使用double类型来计算

     double  a=1.0;

     double b=2.0;

System.out.println(a/b);  //执行结果 0.5

神奇的代码2:

    double  num=1.1;

System.out.println(num*num)

// 执行结果     1.2100000000000002

java中的double虽然也是8个字节,但是浮点数的内存布局和整数差别很大,不能单纯的用2的n次方的形式表示数据范围。

java的double类型的内存布局遵守IEEE 754标准(和C语言一样),尝试使用有限的内存空间表示可能的无限的小数,势必会存在在一定的精度误差。

1.4单精度浮点型变量

基本格式

     float 变量名 = 初始值;

代码示例: 

      float num=1.0f;    //写作 1.0F 也可以

      System.out.println(num);

float 类型在java 中占四个字节,同样遵守 IEEE 754标准,由于表示的数据精度范围较小,一般在工程上用到浮点数都优先考虑double,不太推荐使用float.

1.5 字符类型变量

基本格式:

   char 变量名 = 初始值 ;

代码示例

   char ch= 'A';

注意事项:

  1.java中使用 单引号+单个字母 的形式表示字符字面值。

  2.计算机中的字符本质上是一个整数。在c语言中使用ASCLL表示字符,而java中使用Unicode表示字符。因此一个字符占用两个字节,表示的字符种类更多,包括中文。

    使用一个字符表示一个汉字:

     char ch='王';

     System.out.println(ch);

  在执行时可能会出现乱码,此时我们在执行时加上-encoding UTF-8选项即可

    javac  -encoding UTF-8 Test.java

1.6字符类型变量

基本语法格式

   byte 变量名=初始值;

代码示例

   byte value =0;

   System.out.println(value);

注意事项

   1.字节类型表示的也是整数,只占一个字节,表示范围较小(-128 ->+127)

   2.字节类型和字符类型互不相干

1.7 短整型变量

    基本语法格式:

    short  变量名 = 初始值;

代码示例:

   short value = 0;

   Sy

stem.out.println(value);

注意事项:

    1.short占用2个字节,表示的范围是 -32768->+32767

    2.这个表示范围比较小,一般不用推荐使用。

1.8 布尔类型变量

    基本语法格式:

    boolean 变量名 = 初始值;

    代码示例:

    boolean value = true;

    System.out.println(value);

    注意事项:

       1.boolean类型的变量只有两种取值,true表示真,false表示假。

       2.Java的boolean类型和int不能相互转换,不存在1表示true,0表示false这样的用法。

       3.boolean 类型有些JVM的实现是占一个字节,有些是占1个比特位,没有明确规定。

1.9 字符串类型变量

      把一些字符放到一起就构成了字符串

      基本语法格式:

      String 变量名 = "初始值";

      代码示例:

      String name="wxl";

      System.out.println(name);

注意事项:

      1. java使用双引号+若干字符的方式表示字符串字面值

      2.和上面的类型不同,String不是基本类型,而是引用类型

      3.字符串中的一些特定的不方便直接表示的字符需要进行转义

转义字符示例:

    // 创建一个字符串 My name is "张三"

    String naame ="My name is \"张三\"";

转义字符有很多,其中几个比较常见的如下:

       转义字符                                                          解释

          \n                                                                    换行

          \t                                                                     水平制表符

          \'                                                                     单引号

          \''                                                                     双引号

          \\                                                                     反斜杠

字符串 + 操作,表示字符串拼接:

    String a = "hello";

    String b = "world";

    String c = a+b;

    System.out.println(c);

还可以用字符串和整数进行拼接:

   String str = "result=";

   int a=10;int b=20;

  String result = str +a+b;

  System.out.println(result);

   // 执行结构

  result =1020

以上代码说明,当一个+表达式中存在字符串的时候,都是执行字符串拼接行为

因此我们可以很方便的使用 System.out.println("a="+a+",b="+b)

1.10变量的作用域

也就是该变量能生效的范围,一般是变量定义所在的代码块

class Test{
    public static void main(String[]args){
     {
        int x=10;
        System.out.println(x);  //编译通过;
     }
        System.out.println(x);  //编译失败,找不到变量x
   }
}

1.11 变量的命名规则

  硬性指标:

      1.一个变量只能包含数字,字母,下划线

      2.数字不能开头

      3.变量名是大小写敏感的,即num和Num是两个不同的变量

   注意 虽然语法上也允许使用中文/美元符($)命名变量,但是不推荐

  软性指标

    1.变量命名要具有描述性

    2.变量名不宜使用拼音

    3.词性推荐使用名词

 1.12 常量

   上面讨论的都是各种规则的变量,每种类型的变量也对应着一种相同类型的常量

   常量指的是运行时类型不能发生改变

   1.字面值类型

    

    2.final 关键字修饰的常量

       final int a = 10;

       a=20;   //编译出错, 无法为最终变量a分配值

      常量不能在程序运行过程中发生修改。

 1.12 理解类型转换

   java 作为一个强类型编程语言,当不同类型之间的变量相互赋值的时候,会有严格的校验

   先看一下几个代码场景:

      int和long/double 相互赋值

 

    long 表达的范围更大,可以将int赋值给long,但是不能将long值赋给int

    double表示范围更大,可以将int 赋值 double ,但是不能将 double赋值给int

   结论:不同数字类型的变量之间赋值,表示范围更小的类型能隐式转换成范围较大的类型,反之则不行。

int 和 boolean 相互赋值

结论:int和boolean是毫不相干的两种类型,不能相互赋值

int字面值常量给byte赋值

   

byte a=100;  //编译通过
byte b=256;  //编译报错,int转换到byte可能会有损失

  注意  byte表示的数据范围是-128->+127,256已经超过范围,而100还在范围之内

 结论:使用字面值常量赋值的时候,java会自动进行一些查验校验,判断赋值是否合理。

   使用强制类型转换

int a=0;
double b=10.5;
a=(int)b;
int a=10;
boolean b=false;
b=(boolean)a;  //编译出错,提示不兼容类型

结论 :使用的方式可以将double类型强制转成int,但是

   1.强制类型转换可能会导致精度丢失,如刚才的例子中,赋值之后,10.5变成10了,小数点后面的部分被忽略

   2.强制类型转换不是一定能成功,互不相干类型之间无法强转。

类型转换小结

   1.不同数字类型的变量之间的赋值,表示范围更小的类型能隐式转换成范围较大的类型

   2.如果需要把范围大的类型赋值给范围小的,需要强制类型转换,且有可能精度丢失

   3.将一个字面值常量进行赋值的时候,java会自动针对数字范围进行检查

1.13 理解数值提升

 int 和 long 混合计算

int a= 10;
long b= 20;
int c= a+b; //编译出错,提示将 long 转成 int 会丢失精度
long d =a+b;//编译通过

 结论 :当int 和 long混合运算的时候,int会提升成long,得到的结构仍然是long类型,需要使用long类型的变量来接收结果,如果非要用int来接收结果,就需要使用强制类型转换

  byte和byte的运算

byte a = 10;
byte b = 20;
byte c = a+b;
System.out.println(c); //编译报错
Test.java:5:错误:不兼容的类型:从int转换到byte可能会有损失

结论:byte和byte都是相同类型,但是出现编译报错。原因是,虽然a和b都是byte,但计算a+b会先将a和b都提升成int,在进行计算,得到的结果也是int,这是赋给c,就会出现上述错误。

由于计算机的cpu通常是按照4个字节为单位从内存中读写数据,为了硬件上实习方便,诸如byte和short这种低于4个字节的类型,会先提升成int,在参与计算。

正确的写法

byte a = 10;
byte b = 20;
byte c= (byte)(a+b);
System.out.println(c)

类型提升小结

     1.不同类型的数据混合运算,范围小的会提升成范围大的。

     2.对于short,byte这种4个字节小的类型,会先提升成4个字节的int,在运算。

1.14int和String之间的相互转换

int转成String

int num =10;
//方法1
String str1=num+"";
//方法2
String str2=string.valueOf(num);

String 转成 int

String str ="100";
int num =Integer.parseInt(str);

 

 

 

 

 

     

 

 

 

 

 

 

 

  

 

1

 

 

 

         

 

      

 

     

 

 

 

 

 

 

PostgreSQL:数据类型与运算符 PostgreSQL的数据类型和运算符系统是其强大功能的核心。通过合理选择数据类型和使用适当的运算符,你可以构建高效、可靠的数据库应用。无论是简单的数值计算,还是复杂的JSON查询,PostgreSQL都能提供强大的支持。 阅读详情

相关推荐

C++数据类型与运算符的全面解析

本文详细探讨了C++中的数据类型及其使用,包括内置数据类型、派生数据类型以及用户自定义数据类型,并深入解释了每种数据类型的特点和适用场景。同时,文章也对C++中的运算符进行了分类介绍,包括算术运算符、关系运算符、逻辑运算符等,以及如何在实际编程中应用这些运算符。

weixin_29138345的博客 390

java运算符:“+”运算符

/* 关于java中的“+”运算符: 1、+运算符在java语言当中有两个作用: *加法运算,求和 *字符串的连接运算 2、当“+”运算符两边的数据都是数字的话,一定是运行加法运算。 3、当“+”运算符两边的数据只要有一个数据是字符串,一定是运行字符串连接运算。 并且,连接运算之后的结果还是一个字符串类型。 ...

m0_59949484的博客 2775

precise-number:使用JavaScript精确执行加,减,乘和除算法

使用JavaScript精确执行加,减,乘和除算法 为什么? 用纯JavaScript 1.1*1.1 === 1.2100000000000002是真的! 安装 npm install precise-number --save 方法 const N = require('precise-number'); N.add( n1, n2 [,n3...]) //alias N.plus N.sub( n1, n2 ) //alias N.minus N.multiply(n1, n2 [, n3 ...]) //alias N.mul, N.multi, N.productOf N.divide(n1, n2) //alias N.div N.dividedBy N.parse(number_string, decimal) //string to number with decim

C语言---数据类型与运算符

目录 数据类型 整型 实数(浮点型) 布尔型 字符型 输入输出 格式控制 重要部分 运算符 算术运算符 关系运算符 逻辑运算符 与: && 或: || 非: ! 赋值运算符 数据类型 修饰符 signed 有符号 (可忽略) unsigned 无符号 (不可忽略) 整型 整数默认是int类型 int类型在不同的机器上,该类型的变量所占的字节数可能不一样 实数(浮点型) 存储小数(小数点) 存储: 整数部分

qq_62743629的博客 1108

微信小游戏审核避坑指南:如何一次性通过微信审核(附最新审核要求)

本文详细解析微信小游戏审核全流程,提供从开发到上线的关键策略,帮助开发者一次性通过审核。涵盖合规性自查、材料优化、开发环境配置、版本管理、审核材料填写技巧等核心内容,并附最新审核要求和常见驳回问题解决方案,显著提升审核通过率。

weixin_28454475的博客 1411

四参数与七参数坐标转换含义及区别

一.前言 不同坐标系,其椭球体的长半径,短半径和扁率是不同的。比如我们常用的四种坐标系北京54、西安80、WGS84、CGCS2000所对应的椭球体,它们的椭球体参数就各不相同。而不同空间直角坐标系之间的转换一般通过七参数或者四参数来实现坐标转换。 二.四参数转换 两个不同的二维平面直角坐标系之间转换通常使用四参数模型,四参数适合小范围测区的空间坐标转换,相对于七参数转换的优势在于只需要2个公共已知点就能进行转换,操作简单。 在该模型中有四个未知参数,即: (1)两个坐标平...

尘海折柳的博客 1万+

基本数据类型和它们之间的运算规则

基本数据类型 一、整型变量。(byte一个字节、char两字节、short两字节、int四字节) 1、输出超过范围的数据类型编译不通过。 例子:byte范围: -128 ~ 127 而 byte b2 = 128; System. out. println(b2); // 是不行的,编译不通过。 2、声明long型变量,必须以字母小写"l"或大写"L"结尾long a =3414234324L ; 3、通常定义整型变量时用int型。计算机默认 int 型。 二、浮点型变量。(float4字节、 doubl

qq_49793539的博客 1655

STM32 热敏电阻测量温度

1、硬件 STM32F103C8T6、热敏电阻传感器、OLED。 2、热敏电阻传感器的介绍

weixin_54721788的博客 1万+

数据类型之间运算关系

本页目录 支持数学、逻辑运算 支持数学、逻辑运算 运算类型 描述 numeric1支持类型 numeric2支持类型 举 例 numeric1 + numeric2 返回前后两数字数学运算的和 int、double、decimal、bigint 同numeric1 2 + 4.2 numeric1 - numeric2 返...

weixin_33754065的博客 819

支付逻辑漏洞的八大姿势(上篇)

学习支付漏洞,看这篇文章!!!文章来源:SecHub网络安全社区(本资料仅供学习参考,严禁使用者进行未授权渗透测试!严禁任何形式的转载!

qq_39493066的博客 1358

从零编写linux0.11 - 第二章 内核初始化

编程环境:Ubuntu Kylin 16.04 代码仓库:https://gitee.com/AprilSloan/linux0.11-project linux0.11源码下载(不能直接编译,需进行修改) 1.添加内核 进入内核后也不是马上进入main函数,上一章只是暂时设置gdt,此外还要设置idt和其他的一些初始化操作,这些内容也要使用汇编进行编写,此处采用AT&T格式的汇编。 以下为head.s的内容,为了简单起见,内容还是一个死循环。 .globl startup_32 startup_3

皓空Fly的博客 1264

初始Java——变量和运算符中需要注意的点和容易出现的问题

变量和类型 整型变量(int) 注意事项: 1. int 表示变量的类型是一个整型 2. 变量名是变量的标识. 后续都是通过这个名字来使用变量 3. Java 中 = 表示赋值(和数学不一样), 意思是给变量设置一个初始值. 4. 初始化操作是可选的, 但是建议创建变量的时候都显式初始化. 5. 最后不要忘记分号, 否则会编译失败. 6. // 表示注释. 注释作为代码的解释说明部分, 不参与编译运行. 长整型变量(long) 注意事项: 1. 基本语法格式和创建 int 变量基本一致, 只是把

weixin_58163681的博客 508

告别连接难题:Windows 11下Multisim主数据库稳定运行终极配置指南

本文详细解析了Windows 11下Multisim 14.0主数据库连接失败的三大根源,并提供了四步终极解决方案,包括系统环境优化、软件权限配置、注册表修复和网络验证绕过技巧。通过实测数据对比,本方案显著提升了启动速度和稳定性,解决了电子仿真中的常见连接问题。

weixin_33738555的博客 432

数据类型的强制转换与运算符

1、学习技术: 1.1数据类型转换 自动转换 强制转换 1.2运算符 算术运算符 关系运算符 逻辑运算符 赋值与拓展 2、学习详情: 2.1 数据类型转换 自动转换: 由小的数据类型转换成大的数据类型时,会进行自动转换,注意boolean类型无法转换数据类型。 大类型 变量名=小类型值 `public class change{` . public static void main(S...

lclsj479的博客 642

使用OpenGL加载和显示DXF格式的3D模型文件编程

这样,我们就完成了使用OpenGL加载和显示DXF格式的3D模型文件的编程。通过实现加载函数和绘制回调函数,我们能够读取DXF文件的数据并使用OpenGL绘制出来。请注意,这只是一个简单的例子,仅涵盖了基本的加载和显示功能。在本文中,我们将探讨如何使用OpenGL编程加载和显示DXF(Drawing Exchange Format)格式的3D模型文件。DXF是一种通用的CAD(计算机辅助设计)文件格式,常用于存储和交换2D和3D图形数据。使用OpenGL加载和显示DXF格式的3D模型文件编程。

2301_79331421的博客 411

通过轻量级图像增强Transformer (IAT) 提升YOLOv8在低光环境下的检测性能

随着深度学习和计算机视觉的快速发展,目标检测模型在各个领域中的应用不断扩展,特别是在低照度环境下的视觉任务。YOLOv8作为当前最先进的目标检测模型之一,在高亮度和良好照明条件下表现出色,但在低照度环境下的性能存在一定的不足。为了解决这一问题,我们提出了一种轻量级的低照度图像增强网络(IAT)来改进YOLOv8的暗光检测能力。本篇文章将深入探讨这一创新改进,并附带代码实现,帮助大家更好地理解这一技术的应用和效果。

博客 1214

【Python】基本数据类型与运算符应用

从返回浮点数的时间戳方式向时间元组转换,只要将浮点数传递给如localtime()之类的函数即可。如果只想得到整数的结果,丢弃可能的分数部分,可以使用“//”取整除,返回一个整数。是一种动态类型的语言,变量所指向对象的类型可以随时变化。还有常量的概念,所谓常量就是程序运行过程中值不会发生改变的量,例如数学运算中的圆周率。的代码编辑窗口,在该程序文件的代码编辑窗口自动添加了模板内容。的代码编辑窗口,在该程序文件的代码编辑窗口自动添加了模板内容。所示,既有进行时间处理的函数,也有转换时间格式的函数。

weixin_74878822的博客 1063

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Java的数据类型与运算符

摘要:本文介绍了Java标识符的命名规则(必须遵守)和规范(推荐遵守),包括字符组成、大小写敏感等要求。详细讲解了基本数据类型和引用数据类型的区别,以及类型转换的两种方式。同时阐述了算术、赋值、关系、逻辑等运算符的使用方法,特别强调了整数除法的特点和运算符优先级问题。最后总结了类型存储方式、转换注意事项和比较运算符的使用要点。

cherry0515_的博客 1027

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

java 数据类型与运算符

1,左移一位,相当于原数字* 2,左移N位,相当于原数字*2的N次方2,右移一位,相当于原数字/2,右移N位,相当于原数字/2的N次方3,由于计算机移位效率高于计算乘除,当某个代码正好乘除2的N次方时,可以用移位运算代替4,移动负数位或者移位位数过大无意义5,三目运算符布尔表达式1?表达式2 : 表达式3如果表达式1为真,则返回表达式2的结果,否则返回表达式3的结果。

Harrybili的博客 2075

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

运算符与数据类型的转换

运算符可分为赋值运算符和算术运算符。

wxand的博客 400

Java基础知识(数据类型与运算符)

class(类)、interface(接口)、record(记录类型)、enum(枚举类型)、@interface(注解类型)、name[ ](数组)。标识符用来给变量、方法、类型命名。 标识符必须以 字母、下划线、美元符$开头,区分大小写。 驼峰命名法:CamelCase --> 所有单词首字母大写;类与接口采用此法,且名词命名; camelCase --> 第一个单词首字母小写,变量、方法名采用。大多与C语言相同; type varname =value; 关注两点 基本数据类型及字面值 字面值是 某

qq_73146347的博客 922

java数据类型与运算符

数据类型转换:byte 算数、赋值、关系运算符、逻辑运算符、位运算符 1、字符+任何数据类型都是字符串连接 2、当有赋值运算符的时候,++在后面,那么先赋值后自身加一;++在前面,那么自身加一再做赋值运算 逻辑运算符(&&;||;!;&;|;^) 1、短路与&&:条件1&&条件2,仅仅两个条件同时为真,结果为真,若1为假,则不判断2 2、短路或||:条件1||条件2

Bubble1210的博客 508

JAVA数据类型与运算符

1.  标识符1.1什么是标识符:在编程中我们对于使用到的变量、常量、方法、语句块等有应该的名字,这个名字我们称为Java的标识符,标识符还可以作为Java中的类名、接口名、对象名、方法名等。1.2Java语言对于标识符的规定:标识符可以有任意顺序的大小写字母、数字、下划线_和没有符$组成标识符不能以数字开头标识符不能是Java中保留的关键字(class,public,import,char,pr...

gcdm0708的博客 453
上一篇: 网络原理初识
下一篇: 2.运算符
王翔乐
博客等级 码龄8年 6粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值