Java常用类:Collections详解

【JAVA】Collections类 详解 Collections类 详解 阅读详情

作为一个稀有的Java妹子,所写的所有博客都只是当作自己的笔记,留下证据自己之前是有用心学习的~哈哈哈哈(如果有不对的地方,也请大家指出,不要悄悄咪咪的不告诉我)

1.Collections

首先区分下Collections和Collection,前者是集合的一个工具类,提供了非常多的便捷方法操作集合;后者是集合的鼻祖接口

2.主要方法

1.sort排序
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
//排序,默认是从小到大
Collections.sort(list);
System.out.println(list);
//[aaa, ccc, nnn, rrr, ttt]
//指定排序方式
Collections.sort(list, new Comparator<String>() {
     @Override
     public int compare(String o1, String o2) {
         if(o1.compareTo(o2)<0){
              return 1;
         }
         return -1;
     }
});
System.out.println(list);
//[ttt, rrr, nnn, ccc, aaa]
2.reverse倒叙方法
 List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
Collections.reverse(list);
System.out.println(list);
//[nnn, ccc, aaa, rrr, ttt]
3.shuffle随机排序
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
Collections.shuffle(list);
System.out.println(list);
//[nnn, rrr, ccc, aaa, ttt]
4.swap交换集合中某两个位置元素
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
Collections.swap(list,1,2);
System.out.println(list);
//[ttt, aaa, rrr, ccc, nnn]
5.copy覆盖下标复制一个集合到另一个集合
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
ArrayList<String> list2 = new ArrayList<>();
list2.add("111");
list2.add("222");
Collections.copy(list,list2);
System.out.println(list);
//[111, 222, aaa, ccc, nnn]
6.min返回集合中的最小元素
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
String min = Collections.min(list);
System.out.println(min);
//aaa
7.max返回集合中的最大元素
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
String max = Collections.max(list);
System.out.println(max);
//ttt
8.replaceAll替换集合中所有的旧元素为新元素
 List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
list.add("ccc");
Collections.replaceAll(list,"ccc","xxx");
System.out.println(list);
//[ttt, rrr, aaa, xxx, nnn, xxx]
9.indexOfSubList返回某一个元素在集合中第一次出现的位置
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
list.add("ccc");
List<String> list2 = new ArrayList<>();
list2.add("ccc");
int i = Collections.indexOfSubList(list, list2);
System.out.println(i);
//3
10.frequency查找某个元素在集合中出现的次数
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
list.add("ccc");
int n = Collections.frequency(list, "ccc");
System.out.println(n);
//2
11.fill全部元素替换
List<String> list = new ArrayList<>();
list.add("ttt");
list.add("rrr");
list.add("aaa");
list.add("ccc");
list.add("nnn");
list.add("ccc");
Collections.fill(list,"o");
System.out.println(list);
//[o, o, o, o, o, o]
【JAVA】Collections.sort()方法详解 是 Java 集合框架(Java Collections Framework)中的一个静态方法,用于对列表(List)中的元素进行排序。此方法利用了 Java 的泛型机制,可以很方便地对各种类型的列表进行排序。源码方法体:参数list:需要排序的列表。列表中的元素必须实现了 Comparable 接口,以便能够比较它们的大小。 阅读详情

相关推荐

用Python进行GEO数据挖掘(学习笔记四):富集分析

该笔记详细解释了富集分析的工作原理,并简要地利用gseapy在python中进行富集分析的操作。

m0_64111502的博客 5649

【Java 基础篇】Java Collection详解

Collection是Java集合框架的根接口,它定义了一些基本的操作和行为,如添加、删除、遍历等。List和Set。List是一个有序的集合,可以包含重复元素。它提供了按索引访问、插入、删除等操作。常见的实现类有ArrayListLinkedList和Vector。Set是一个不允许包含重复元素的集合。它提供了高效的元素查找和去重。常见的实现类有HashSetTreeSet和。此外,Map接口也是Collection框架的一部分,它提供了键值对的存储和操作。Map中的键是唯一的,值可以重复。

繁依Fanyi的博客 7278

非目标代谢组学(untargeted metabolomics)中常用的方法学考察的方法(四)

最早使用的一种方法,从QC样本的总离子流图中选择具有代表性的离子峰(覆盖不同的保留时间,不同的强度),在对QC样本进行重复检测之后,计算这些离子的保留时间以及峰面积的相对标准偏差(RSD),用以考察分析方法的稳定性以及重复性。所有样品检测完之后,收集所有的QC样本的原始数据进行数据预处理,包括(峰提取,排列,归一化等),经过数据过滤(80%规则)之后,计算剩下的峰的峰面积的RSD值。由于QC样本是 等量混合了所有的被检测样本,理论上QC样本包含了所有样本中的代谢物,因此QC样本理论上会。

hlllllllhhhhh的博客 1487

JAVA Collections类

JAVA Collections类中shuffle和sort方法的介绍

qq_53312143的博客 5362

汇川AM系列PLC玩转CNC:手把手教你用File模式读取G代码文件(附避坑指南)

本文详细介绍了如何使用汇川AM系列PLC的File模式读取G代码文件,涵盖从CAD设计到PLC配置的全流程。特别针对路径格式、文件类型等常见问题提供避坑指南,帮助工程师快速实现CNC加工的自动化控制。

weixin_33582311的博客 401

第二章 零差云控关节模组内部构造

对零差云控的eRob70I进行了拆解

SFY__优快云的博客 5954

java Collections类 详解

java 集合篇章——Collections类常用方法讲解及演示。

优快云 / 稀土掘金/ B站 / GitHub: Cyan_RA9 7133

Simulink仿真模块 - Data Type Conversion

Data Type Conversion将输入信号转换为指定的数据类型 在仿真库中的位置为: Simulink / 常用模块 Simulink / Signal Attributes 模型为: 说明 DataTypeConversion模块可将任何 Simulink®数据类型的输入信号转换为您指定的数据类型。 注意 要通过指定模块参数来控制输出数据类型,或者要从下游模块继承数据类型,使用DataTypeConversion模块。要...

jk_101的博客 2519

Java - 集合工具类Collections

Java中的Collections是一个工具类,提供了一系列静态方法,用于操作集合(Collection)和Map。它包含了许多常用的方法,例如排序、查找、替换、复制等。Collections类的方法大多数都是静态的,可以直接通过类名调用,不需要实例化。它提供了许多方便的方法,使得我们可以轻松地对集合进行操作。

weixin_73869209的博客 6303

组合导航 | RTK、IMU与激光雷达组合导航算法:原理、实现与验证

当激光雷达噪声增加至0.1m时,系统位置RMSE仅上升18%,验证了滤波算法的鲁棒性[110]:融合方案在RTK信号丢失30秒后,位置误差仍控制在1.5m内,显著优于IMU单独导航[28]:ESKF框架能有效建模传感器误差特性,状态向量需包含外参与时间偏移等关键参数。:传感器标定精度直接影响系统性能,建议每3个月进行一次重新标定。:IMU预积分与特征匹配是系统实时性的关键瓶颈,需重点优化。:维持10秒窗口内的关键帧,平衡精度与实时性[132]:特征匹配占总耗时的65%,可通过。

尘世冰封的专栏 942

【实验必备】对AffectNet数据集进行人脸对齐的小Demo

本文首先简单介绍了AffectNet数据集,及人脸关键点等背景知识,接着Po出了人脸对齐的代码及效果展示。注:本文代码参考自FG2021的Emotion-GCN的开源代码,具有一定的可靠性,欢迎大家学习!

信小海 2665

java学习04(常用类、集合)

java学习

weixin_73416102的博客 947

uboot引导vxworks6.9(T4240) 启动

vxworks内核配置下搜索RAM_LOW_ADRS, 值为0x01000000, 是vxworks下载启动的地址,uboot启动时会用到。vxworks6.9 t4240用的是32地址空间,uboot下用的是64位地址空间,去uboot下修改law物理地址空间为32位。vxworks下flash基地址为 0xff000000, 将vx下的地址修改为0xe0000000,和uboot下地址一致。uboot下flash基地址为0xe000000,vxworks内核配置为build-in 符号表。

珂珂可爱多 3235

三.一些常用类

java.lang中的常用类:包装类,String,Object 一.Arrays类 1.sort() Arrays.sort(arr) Arrays有多个重载的sort()方法,既可以按照自然顺序排序,也可以传入比较器参数定制顺序排序 2.index binarySearch(arr,key) 3.copyOf:拷贝数组   Arrays.copyOf(srcArray,newLength...

cs123HL的博客 62

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

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

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Java中Collections.sort()排序详解

java中Collections.sort排序详解java基础—— Collections.sort的两种用法,简单明了 。java List 排序 Collections.sort()Java 中 Comparable 和 Comparator 比较第一种:ComparableComparable 是排序接口。若一个类实现了Comparable接口,就意味着“该类支持排序”。 即然实现Compa

薛瑄的博客 7万+

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Java进阶篇之常用类库详解

Java中常用的类库是开发过程中不可或缺的工具,它们为我们提供了丰富的API和强大的功能。String类帮助我们高效处理文本数据,Math类提供了各种数学运算工具,而Collections框架则为数据存储和操作提供了灵活而强大的结构。掌握这些类库的使用技巧和最佳实践,能够显著提高开发效率,并使代码更具可维护性和扩展性。在实际开发中,应当根据具体需求选择合适的实现,例如在频繁修改字符串时使用,在需要排序和查找操作时利用工具类等。

code2cat的博客 816

深度学习工具包 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")

Collections类详解

Java

qq_50692350的博客 1万+

【JAVA-Day47】Java常用类Collections解析

嗨,大家好,我是默语博主!今天我们将深入研究Java编程中不可或缺的一部分:Collections类。通过这篇博客,你将了解到Java集合框架的核心概念、Collections类的方法及其灵活运用,以及如何结合Java 8+特性进行高级集合操作。让我们一起揭开Java集合类的神秘面纱吧!在Java编程的世界中,Collections类是我们不可或缺的好帮手。这个位于java.util包中的实用类为我们提供了丰富的静态方法,用于对各种集合对象进行高效操作和灵活管理。

沉淀所学,分享所思,让热爱与成长同行。商务记录AI实战经验,助力开发者快速成长。 热爱AI,希望做出有影响力的技术成果。 技术点亮生活,分享连接价值与机会。 专注AI落地实战,陪你走好技术每一步。 2万+

【Java SE】Collections类详解

①类是java提供的一个操作等集合的工具类。类中提供了一系列操作集合的静态方法,使用这些方法可以实现对集合元素的排序、查询、修改等操作②位于下,其类定义。

m0_55908255的博客 1865

Java 11中的Collections类详解

Java的Collections工具类提供静态方法简化集合操作,包括排序、搜索、反转等算法封装,支持线程安全包装与不可变集合创建。常用方法如sort()、binarySearch()、shuffle()及极值查找min()/max()。Java 11新增了List.of()等工厂方法快速构建不可变集合,与Java 8相比优化了GC策略和API设计。最佳实践建议:多线程环境使用同步包装器,优先选择不可变集合提升安全性,根据数据规模合理选择算法

技术人集结地 1517

Java 工具类详解:Arrays、Collections、Objects 一篇通关

本文详解 Java 开发必备的三大工具类:Arrays、Collections、Objects。Arrays 专注数组操作,提供 sort 排序、binarySearch 查找、copyOf 复制等功能,需注意 asList 返回的 List 不可修改,基本类型数组转集合需用包装类。Collections 聚焦集合处理,支持排序、反转、生成同步 / 不可变集合,同步集合性能较低,高并发建议用并发集合。Objects 擅长对象空值处理与比较,isNull/nonNull 简化空判断,equals 避免空指针等

qq_40303030的博客 1391

Java Collections 类中方法详解

类是 Java 集合框架的一个工具类,它包含一系列静态方法,用于操作和处理各种类型的集合。通常使用归并排序 (Merge Sort) 或 TimSort (一种混合排序算法,结合了归并排序和插入排序的优点),具有较好的平均性能和最坏情况性能。类提供了一组静态方法,用于将非线程安全的集合转换为线程安全的集合。返回指定集合中的最大元素,使用指定的比较器进行比较。返回指定集合中的最小元素,使用指定的比较器进行比较。集合中查找指定的元素,使用指定的比较器进行比较。使用指定的随机源随机排列指定的。

专注于技术分享 1252

java Collections 详解

java Collections 详解

T_Y_F_的博客 1554

【JAVA-Day48】Java常用类Collections解析

在这部分,我们将介绍ArrayList类的基本概念,探讨它如何在Java中实现动态数组功能,以及它与其他集合类的区别。您将了解ArrayList在Java编程中的重要性以及它的基本特征。解答:ArrayList是 Java 中的一个动态数组类,它实现了List接口。它可以根据需要动态地增长和缩小。大小可变:ArrayList 的大小是可变的,可以根据需要动态地增长和缩小,而普通数组的大小是固定的。支持泛型。

沉淀所学,分享所思,让热爱与成长同行。商务记录AI实战经验,助力开发者快速成长。 热爱AI,希望做出有影响力的技术成果。 技术点亮生活,分享连接价值与机会。 专注AI落地实战,陪你走好技术每一步。 2万+

【JavaSE专栏47】Java常用类Collections解析,你了解JAVA集合类的通用用法吗?

本文讲解了 Java 中常用类 Collections 的语法、使用说明和应用场景,并给出了样例代码。

Designer 小郑的技术博客 1470

Java:Collections的使用

java集合的核心接口及其实现类的简单使用,Collections工具类使用介绍

xike1024的博客 605
上一篇: Java常用类:ThreadPoolExecutor线程池
下一篇: Java常用类:Arrays类详解
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值