day09-JAVA常用类、JAVA比较器(comparable、comparator)、system类、Math类、BigInteger与BigDecimal

【nvidia-B200】实际生产报错NVRM: nvAssertFailedNoLog: Assertion failed: pIOVAS != NULL @ io_vaspace.c:601 升级 NVIDIA 驱动到 R545/R550 数据中心版本(解决 IOVA bug,这是性能差的根本原因);重启服务器(清理驱动残留资源,消除日志中的 NVRM 错误);验证 NVLink/PCIe 链路(确保 8 卡互联使用高速链路,而非单卡 PCIe 共享带宽)。完成这 3 步后,ncccl-test的all_reduce带宽应能提升至100GB/s 以上(取决于服务器的 NVLink/NVSwitch 配置),恢复正常性能。 阅读详情

1.自然排序:java.lang.Comparable

是一个接口,重写compareTo方法, 还可以使用Arrays.sort 或 Collections.sort方法

class A implements Comparable{

@Override

public int compareTo(Object o ){

}

}

Comparable 的典型实现 : ( 默认都是从小到大排列的 )
        String :按照字符串中字符的 Unicode 值进行比较
        Character :按照字符的 Unicode 值来进行比较
        数值类型对应的包装类以及 BigInteger 、 BigDecimal :按照它们对应的数值大小进行比较
        Boolean : true 对应的包装类实例大于 false 对应的包装类实例
        Date 、 Time 等:后面的日期时间比前面的日期时间大
public class ComparableTest {
    public static void main(String[] args) {
        Goods g1 = new Goods("三国",18);
        Goods g2 = new Goods("水浒",29);

        System.out.println(g1.compareTo(g2));

        Goods [] all = new Goods[4];
        all[0]=new Goods("111",2);
        all[1]=new Goods("222",26);
        all[2]=new Goods("333",12);
        all[3]=new Goods("444",22);

        Arrays.sort(all);
        System.out.println(Arrays.toString(all));
    }
}

class Goods implements Comparable{
//属性
    private String name;
    private int price;
//构造器
    public Goods(String name, int price) {
        this.name = name;
        this.price = price;
    }

//get、set方法
//toString方法

//重写compareTo方法
    @Override
    public int compareTo(Object o) {
        if(o instanceof Goods){
            Goods gg = (Goods) o;
            if (this.price>gg.price){
                return 1;
            }else if(this.price<gg.price){
                return -1;
            }
            return 0;
        }

        throw new RuntimeException("输入数据类型不一致");
    }
}

2.定制排序:java.util.Comparator

如果没有实现Comparable接口,可以考虑使用Comparator,重写compare方法,

Arrays.sort(goods,new comparator(){

@Override

public int compare(Object o1,Object o2){

}

});

package com.zkx.stringtest;

import java.util.Arrays;
import java.util.Comparator;

/**
 * @author zkx
 * @create 2022-02-11 22:35
 */
public class ComparatorTest {
    public static void main(String[] args) {
        Good [] goods = new Good[4];
        goods[0]= new Good("666",22);
        goods[1]= new Good("222",21);
        goods[2]= new Good("111",2);
        goods[3]= new Good("444",33);

        Arrays.sort(goods, new Comparator(){

            @Override
            public int compare(Object o1, Object o2) {
                Good g1 = (Good) o1;
                Good g2 = (Good) o2;

                return g1.getName().compareTo(g2.getName());

            }
        });

        System.out.println(Arrays.toString(goods));
    }
}

class Good {
    private String name;
    private int price;

    public Good(String name, int price) {
        this.name = name;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Good{" +
                "name='" + name + '\'' +
                ", price=" + price +
                '}';
    }
}

3.System类

https://blog.youkuaiyun.com/PorkBird/article/details/113695807

4.Math类

同上

5.BigInteger与BigDecimal

同上

5G无人机安全研究综述 国内多所高校提出混合信任模型,南京航空航天大学于2020年提出了起源信息感知的无人机网络信任模型[26],模型基于报文的完整性对报文创建和操作节点的行为评判并生成观测证据,收集证据进行信任评估,识别网络中的恶意节点并进行路由隔离,实现准确的对等信任评估。同时,5G技术的高速率、高可靠性、低时延等特点,能够为无人机提供实时高清图像回传,保证通信网络的稳定,拓展无人机飞控距离限制,丰富了5G无人机的应用场景。5G和无人机技术的融合,丰富了传统无人机的应用服务场景,然而5G无人机仍存在安全隐患。 阅读详情

相关推荐

大象机器人myAGV移动机器人+mechArm六轴机械臂,开源复合机器人开发与实践!

我们这章节的内容是将协作性机械臂打破距离上的限制,跟移动机器人(myAGV)相连接,实现一个案例。

m0_71627844的博客 1488

【2019尚硅谷宋红康java基础2】 比较器 Comparator和 System 和 Math BigDecimal

比较器 Comparator和 System 和 Math BigDecimal

qq120631157的博客 584

【tips】在PyCharm中安装opencv图文版详细教程

pip如下图所示,左边的蓝色图标就是终端。点开终端后,键入命令,按下回车后就开始下载了。如果你更喜欢图形化操作,可以在 PyCharm 中直接安装:。点击右上角的 +按钮(添加包)。搜索或,点击。

zhousanguhe的博客 6744

【JavaSE】常用类:java比较器与BigInteger,BigDecimal

说明: java中的对象,正常情况下,只能比较 == 或 != 不能使用 > 或

T_158327的博客 1256

保姆级教程:在通达信V7.611上配置欧奈尔RPS曲线(附完整公式与每日更新流程)

本文提供通达信V7.611配置欧奈尔RPS曲线的保姆级教程,涵盖从环境准备、基础设置到核心公式配置的全流程。详细讲解如何创建股票池、编写EXTRS基础公式及RPS显示公式,并附每日更新流程与实战应用技巧,帮助投资者精准捕捉强势股。

weixin_30000735的博客 464

告别抓包:一个Xposed模块教你监控抖音App的本地数据变化

本文详细介绍了如何利用Xposed框架开发模块,实现抖音App本地数据监控的技术方案。通过Hook关键方法,开发者可以实时获取用户信息、推荐算法参数等核心数据,无需Root设备即可高效调试。文章包含完整的环境配置、代码实现和优化技巧,为移动应用开发与测试提供创新解决方案。

weixin_27015733的博客 385

java比较器Comparable Comparator 及其他类

1.Comparable接口: 1.介绍:就是排序的对象自己设置排序规则,再调用排序函数(如Array.sort( obj))进行排序; 1.像String 和 各种包装类(Integer,Double等)实现了Comparable接口,重写了compareTo(obj)方法,给出了比较2个 对象大小的比较方式; 2.重写Comparable的规则: 如果当前对象this大于形参对象obj,返回正整数; 如果当前对象this小于形参对象obj,返回...

weixin_53387031的博客 394

Spring AI 项目实战(五):Spring Boot + AI + DeepSeek + Redis 实现聊天应用上下文记忆功能(附完整源码)

本文介绍了如何基于Spring Boot 3.2、Spring AI 1.0.0-M4、DeepSeek API和Redis构建具备上下文记忆功能的智能聊天应用。项目采用现代化技术栈,包括Java 17、Maven、Lombok等,实现了智能对话、会话管理、异常处理等核心功能。文章详细讲解了环境搭建、配置管理(含Redis和AI服务集成)、核心组件设计(如消息实体、控制器和服务层实现),以及完整的项目结构。该项目提供了美观的Web界面和REST API,支持对话上下文存储(通过Redis实现)和系统监控,可

博客 829

Comparable、Comparator

小记: Comparable接口:只有一个compareTo(T o)方法;一般由类实现该接口 Comparator接口:方法很多但只需要重写compare(T o1, T o2)方法,其他方法不用实现,因为jdk8以后,接口中用default修饰的方法可以有方法体,类似抽象类。一般用于匿名内部类 简单实例: BigDecimal实现了Comparabl...

MrwanZH的博客 306

【DRAM存储器六十八】DDR5介绍--DQS Interval Oscillator—动态时序校准利器

DDR5内存采用DQS间隔振荡器(DQSIntervalOscillator)技术应对高速数据传输中的时序漂移问题。该技术通过测量DQS信号在可编程时间窗口内的振荡次数(16位计数值),动态监测温度/电压变化导致的DQS-DQ延迟偏移。控制器通过MPC命令启停振荡器,读取MR46/MR47寄存器获取计数值,并与基准值对比来调整DQS相位,确保数据采样窗口始终处于最佳位置。该机制使DDR5在8400MT/s高速率下仍能保持数据可靠性,有效补偿±0.48tCK的时序偏移。

highman110的博客 153

卫朋:IPD流程落地之产品开发验证阶段解读

IPD验证阶段

产品线负责人 1488

Java System,Math类

/* * Java.lang提供java语言程序设计的基础类(基础数据类型的封装类、Class、math、线程类)。 * lang包中的类的应用不需要手动import。 * * *java.math 包的 BigInteger 可以表示不可变的任意精度的整数 *一般的 Float 类和 Double 类可以用来做科学计算或工程计算,但在 商业计算中, *要求数字精度比较高,故用到 java.mat...

weixin_43670105的博客 212

Unity Sprite Atlas C++底层原理全解析 —— “像素聚合工厂”的秘密

Unity Sprite Atlas C++底层实现简析 Sprite Atlas是Unity中用于优化2D渲染性能的核心机制,其C++底层实现如同一个高效的"像素聚合工厂"。该系统通过将多个小纹理合并为一个大纹理,显著减少Draw Call次数和GPU纹理切换开销。 在数据结构上,底层采用SpriteAtlasData存储图集元数据,PackedTexture管理合并后的大纹理,SpriteFrame记录每个子精灵的位置信息,并通过哈希表实现快速查找。编辑器阶段使用最大矩形等算法优化空

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 204

【Java 13】常用类下 - JDK8之前和JDK8新增的日期时间API、Java比较器、System类、Math类、BigInteger与BigDecimal

常用类下 - JDK8之前和JDK8新增的日期时间API、Java比较器、System类、Math类、BigInteger与BigDecimal2 JDK8之前的日期时间API2.1 java.lang.System类2.2 java.util.Date类2.2.1 两个构造器2.2.2 两个方法2.2.3 子类java.sql.Date类2.3 java.text.SimpleDateFormat类2.3.1 SimpleDateFormat的实例化2.3.2 格式化:日期 --> 字符串2.3.

Wmiao 327

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

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

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

Java学习路线:day21 常用类2

文章目录第9章Java常用类IDEA中Debug调试JDK 8之前的日期时间API(`这节给我整蒙了!!!`)SimpleDateFormat的使用SimpleDateFormat的练习Calendar日历类的使用JDK8中日期时间API的介绍LocalDate、LocalTime、LocalDateTime的使用Instant类的使用DateTimeFormatter的使用其它日期时间相关API的使用参考:与传统日期处理的转换Java比较器概述Comparable自然排序举例自定义类实现Comparabl

杨丙寅 1545

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

深入了解:Java中BigDecimal比较大小的方法

在实际开发中,我们经常会遇到需要比较两个BigDecimal对象的大小的情况,比如排序、判断大小等。但是由于BigDecimal是一个不可变的、精确的、任意精度的有符号十进制数,所以不能直接使用比较运算符(如>、

牛肉胡辣汤 2万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Java:Comparator 排序问题

你们也看见上面的这个图了,最近在研究这里面的知识点,涉及到了自己的知识盲区,就是学习学习,可是越发学习,发现越多不懂的知识,今天分享的是 对象的排序问题。 需求 这里提出来一个需求,和简单,就是给对象列表中的对象按照一定的规则排序。 这里给出实体类,定义的是内部类,这里没有修饰符号,不知道大家是否还知道 private(类内部),default(类内部,包), protected(类内部,包,子类),public(类内部,包,子类,外部包),这些的作用范围。 这里使用的是lombok的注解,Data(包.

jet5devil的博客 629

一篇告诉你Comparator.comparing的使用

一篇学会JAVASE的Comparator函数式接口以及comparing方法;

qq_45979629的博客 2万+

Java常用类(比较器、System类、Math类、BigInteger和BigDecimal类)

Java常用类(比较器、System类、Math类、BigInteger和BigDecimal类)一、比较器(一)自然排序:使用Comparable接口(二)定制排序:使用Comparator接口二、System类三、Math类四、BigInteger和BigDecimal类 一、比较器 (一)自然排序:使用Comparable接口 像String、包装类等实现了Comparable接口,重写了compareTo(obj)方法,给出了比较两个对象大小的方式。(进行了从小到大的排列)。 实现 Compar

weixin_44630656的博客 433

Comparator.comparing 排序

排序

qq_44798321的博客 2468

Java1.8-我的项目使用

Java1.8使用

qq_42272350的博客 427

java8-List的常用方法

一、填充字段处理 需求描述:在插入数据的时候自动填充createTime和updateTime为当前插入数据的时间,在数据更新的时候修改updateTime为修改数据的时间。不需要人为的手动赋值。 创建数据库表, CREATE TABLE `user` ( `id` bigint(20) NOT NULL COMMENT '主键ID', `name` varchar(30) DEFAULT NULL COMMENT '姓名', `age` int(11) DEFAULT NULL COMMEN...

小小小猿 4062

为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较?

GitHub 17k Star 的Java工程师成神之路,不来了解一下吗! GitHub 17k Star 的Java工程师成神之路,真的不来了解一下吗! GitHub 17k Star 的Java工程师成神之路,真的真的不来了解一下吗! BigDecimal,相信对于很多人来说都不陌生,很多人都知道他的用法,这是一种java.math包中提供的一种可以用来进行精确运算的类型。 很多人都知道,在进行金额表示、金额计算等场景,不能使用double、float等类型,而是要使用对精度支持的更好的BigDecim

HollisChuang's Blog 8948

Math 类和BigDecimal 类

Math类和BigDecimal类

ye_pxj的博客 269

set集合

HashSet是无序的 TreeSet是可排序的 LinkedHashSet是排序的 Set接口 Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false。 Set判断两个对象相同不是使用==运算符,而是根据equals方法。也就是说,只要两个对象用equals方法比较返回true,Set就不 会接受这两个对象。 HashSet HashSet...

移动开发记录 219

compareTo bigdecimal 返回结果

根据返回的结果,我们可以确定哪个数更大或相等。该方法返回一个整数,表示这两个。类的一个方法,用于比较两个。在这个例子中,我们创建了两个。

道友 1833
上一篇: day09-JAVA常用类、String、StringBuffer、StringBuilder、时间API
下一篇: day10-枚举类、注解
m0_62361663
博客等级 码龄5年 0粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值