- C#如何将目标格式转换为字符串
Luxhalo
c#开发语言
在C#中,将目标格式转换为字符串通常意味着将某个对象或值转换成它的字符串表示形式。这里有几种常见的方法来实现这一目标:使用ToString()方法:所有C#中的类型都继承自System.Object类,该类提供了一个ToString()方法,用于返回对象的字符串表示。示例:intnumber=123;stringnumberAsString=number.ToString();使用字符串插值:字符
- Windows X64 弹计算器shellcode
在学02
汇编
[72,129,236,0,1,0,0,101,72,139,4,37,96,0,0,0,72,139,64,24,72,139,64,48,72,139,112,16,72,139,88,64,72,139,0,129,123,12,51,0,50,0,117,236,72,139,206,72,199,194,50,116,145,12,232,192,0,0,0,76,139,240,72,
- 正则表达式--元字符-边界符(3)
叶不休
正则表达式javascript前端css3chromecsshtml
边界元字符1.^------表示开头2.$------表示结尾Documentconstreg1=/\d///表示字符串至少出现一个数字console.log(reg1.test('abc123def'))//trueconstreg2=/^\d///表示字符串开头是一个数字console.log(reg2.test('abc123def'))//falseconsole.log(reg2.tes
- 【网络安全】Self XSS + 文件上传CSRF
秋说
web安全漏洞挖掘
未经许可,不得转载。文章目录正文发现反射点实现XSS跨站请求伪造(CSRF)与文件上传结合POC正文在目标网站target.com的“联系我们”表单中,我注意到一个文件上传选项。我最初输入了一个随机字符串,如123xss,结果发现服务器没有对这个字符串进行足够的处理,比如转义或过滤,而是将其直接反射到网页中并展示给用户。于是,我尝试注入XSSpayloads,但由于HTML编码,攻击未能成功。发现
- SOD贴片二极管封装形式与尺寸( SOD-123/323/523)
哄娃睡觉
stm32
目前,贴片二极管已经在大多数应用中取代了传统的引线式产品。其中,SOD封装是大部分贴片二极管的安装形式。SOD衍生了一系列二级管封装形式SOD是小外形二级管(SmallOutlineDiode)的英文缩写,目前已经衍生了一系列标准封装形式。这些二极管封装用SOD后面的一串数字进行区分,例如SOD-23、SOD-523、SOD323等等。它们的封装尺寸如下:SOD-123塑料体尺寸:L2.70mm,
- YUV视频数据类型
香草加冰鸭
OpenGL渲染音视频
YUV视频数据类型1.概述2.YUV420P2.1YU122.2YV123.YUV420SP3.1NV213.2NV124.YUV和RGB转换1.概述YUV视频数据是根据一个亮度Y和两个色度UV来定义的颜色空间。常见的YUV格式有I420,NV12,YV12。YUV有三种采样模式,其中:YUV4:4:4采样,每一个Y对应一组UV分量,一个YUV占8+8+8=24bits3个字节。YUV4:2:2采
- 记录--P1157 组合的输出(递归实现组合取数)
wtmReiner
做题记录算法c++源代码管理
完整题目请前往洛谷P1157组合的输出题目描述排列与组合是常用的数学方法,其中组合就是从nnn个元素中抽出rrr个元素(不分顺序且r≤nr\lenr≤n),我们可以简单地将nnn个元素理解为自然数1,2,…,n1,2,\dots,n1,2,…,n,从中任取rrr个数。现要求你输出所有组合。例如n=5,r=3n=5,r=3n=5,r=3,所有组合为:123,124,125,134,135,145,2
- 解决gitlab的root登录问题
Gloves_you
gitlab
登录gitlab控制台--gitlab-railsconsole--查询用户user=User.where(id:1).first/User.all--修改邮箱user.email='
[email protected]'--修改问题反馈邮箱(该邮箱需要和email一致)user.notification_email='
[email protected]'--保存user.save!--退出出consolequit
- JMeter常用函数整理
爱学测试的李木子
软件测试jmeter软件测试职场和发展
"_csvRead"函数csvRead函数是从外部读取参数,csvRead函数可以从一个文件中读取多个参数。下面具体讲一下如何使用csvread函数:1.新建一个csv或者text文件,里面保存要读取的参数,每个参数间用逗号相隔。每行表示每一组参数,每列表示每种参数:比如:admin,123manager,4562.打开Jmeter的函数助手,选择csvread函数:其中:CSVfiletoget
- Ubuntu 文件同步工具 rsync
蚁小帅
ubuntuubuntu
cp和scp是ubuntu中文件拷贝常用的两个命令,一般在同一台服务器上我们是用cp命令,跨服务时使用过scp命令,但是如果做文件同步的话,rsync要比上述两个命令更好用一些,跨不跨服务器都是如此。因为rsync可以只同步需要更新的文件,而不是将所有的指定路径内的文件都拷贝一份,然后再目标路径下去覆盖源文件,比如本地的/mnt/tem文件夹要和远程xx.xx.xx.123的/mnt/tem路径做
- Qt正则表达式用法
寒听雪落
qtmysql开发语言
正则表达式详解\\d{3}:\\d表示转义字符,因为C++用\\表示实际的\,即\\d表示整数,后面的{3}表示目的字符串有连续的三个整数,比如123。[a-z]+:表示匹配中括号里面小写字母a-z的任意一个字母,后面的+号表示要查找的字符串至少出现一个小写字母。[A-Z]+:表示匹配中括号里面大写字母A-Z的任意一个字母,后面的+号表示要查找的字符串至少出现一个大写字母。():([a-z]+[A
- Python之__doc__
phac123
Python
简述__doc__方法是python内置方法之一,该方法通常会输入指定对象中的注释部分实例onedeftest():'''HolloWorld'''print("phac123")print(test.__doc__)输出:HolloWorld可以看到注释的部分被输出了出来.twodeftest():'''HelloWorld'''#sddsfdsfsdprint("phac123")#sdfsd
- mysql8.0使用PXC实现高可用
我不要放纵
linux服务器运维
1.先将环境配好(三个都做)ip角色192.168.23.112pxc1192.168.23.113pxc2192.168.23.114pxc3host解析(三个都做)cat>>/etc/hostsCREATEUSER'admin'@'%'IDENTIFIEDWITHmysql_native_passwordBY'MySQL@123';QueryOK,0rowsaffected(0.00sec)m
- JavaScript-冻结对象
小爱丨同学
学习javascript
文章目录1.冻结对象2.冻结判断3.深冻结和浅冻结1.冻结对象Object.freeze()'usestrict'letinitialData={a:123};initialData.a=234;console.log(initialData.a);Object.freeze(initialData);/***严格模式下会报错*TypeError:Cannotassigntoreadonlypro
- @RequestParam 和 @PathVariable区别
是小傲雨呀^_^
java注解
@RequestParam和@PathVariable都是SpringMVC中用于处理HTTP请求参数的两种注解,它们的主要区别如下:1.用途@RequestParam:用于从URL的查询参数中获取值。@PathVariable:用于从URL的路径中获取值。2.URL示例@RequestParam:/users?id=123这里的id是查询参数。@PathVariable:/users/123这里
- leetcode 402. 移掉 K 位数字
萌の鱼
leetcode算法c++数据结构
题目如下数据范围本题可以利用贪心来做,显然我们的目标是使得结果串尽量小,当两个字符串长度相等时靠前的字符越小整个串越小。例如"1243"k=1删除4就行,因为剩下的串长度为3最小的自然是"123"。从这里我们可以感觉到其实我们是要让结果串呈现一种递增的态势这样可以保证是所有结果串中最小的。那么我们可以维持一个递增序列,这个序列就用来保存需要作为答案的下标。显然可以用单调栈来获得这样的序列。!注意:
- c++11总结26——std::regex
却道天凉_好个秋
c++11/17c++regexc++11
std::regex是C++11引入的正则表达式库,用于字符串匹配、搜索和替换。头文件:#include命名空间:std支持的匹配模式:ECMAScript(默认)、POSIX规则等。主要组件组件作用示例std::regex正则表达式对象std::regexpattern("\\d+");std::regex_match完全匹配字符串std::regex_match("123",pattern);
- LeetCode-回文数(C/C++)
想创新AI的新青年
leetcodec++算法c语言
题目描述给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数:是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121是回文,而123不是。示例1:输入:x=121输出:true示例2:输入:x=-121输出:false解释:从左向右读,为-121。从右向左读,为121-。因此它不是一个回文数。示例3:输入:x=10输出:false解释:从右向左读,为01。
- JavaScript
小嘿黑15斤
htmljavascript
JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理。一、如何编写1.JavaScript代码存在形式:-Head中//javascript代码alert(123);#表示是js代码。//javascript代码alert(123);-文件PS:JS代码需要放置在标签内部的最
- C语言入门(2)——基本数据类型、运算符和变量
Sunrise的博客
c语言
C语言入门(2)——基本数据类型、运算符和变量1.基本数据类型–字符型、整型和浮点型在HelloWorld示例使用了字符串,在C语言中还有一类常用的数据类型–数值类型。例如:字符c、整数123和小数3.14。下面是在终端输出整数和小数。#includeintmain(){printf("%c\n",'a');printf("%d\n",123);printf("%f\n",3.14);return
- Everything搜索知识
CodingLife99
软件技能Everything搜索
1.只知道那个文件以.txt结尾.*\.txt$($表示以什么结尾)2.搜索某个路径下的文件D:\configure.bat(搜索D盘下的该文件,注意要用这种类型的"\",和被搜索的文件之间有空格;要先打出路径,再打出搜索文件.)3.搜索指定路径下的多个文件路径\文件1|文件24.使用bool算子(1)foog:搜索同时含有2个字符的(2).jpg|.bmp:或关系(3)ABC!123:(!前有空
- 如何手动设置用户密码
千航@abc
linux运维服务器
[root@xxx~]#vim/etc/shadowaa:$6$ys8J/uav$Yda9jmJ269PdvtAWlhCHM7ZdZs7U481ZRGOz/X58N56nWxky1aMrCrDmPXV0muiHOAI7fTi2uNxZja5k.xceq0:20126:0:99999:7:::手动设置密码为123示例:(注:前提你得提前创建一个aa的账号)(手动添加组:如何手动添加组-CSDN博客)
- docker常用命令及案例
狂爱代码的码农
服务器容器
以下是Docker的所有常用命令及其案例说明,按功能分类整理:1.镜像管理1.1拉取镜像命令:dockerpull:案例:拉取官方的nginx镜像dockerpullnginx:latest1.2列出本地镜像命令:dockerimages案例:查看本地所有镜像dockerimages1.3删除镜像命令:dockerrmi案例:删除镜像ID为abc123的镜像dockerrmiabc1231.4构建
- CTF-web: fs.readFileSync特殊利用
A5rZ
网络安全
URL类URL类是JavaScript的内置类(或对象),它用于处理和解析URL(统一资源定位符)。URL是WebAPI的一部分,广泛应用于浏览器环境和Node.js中。特性构造函数:URL类的构造函数可以接受一个URL字符串和一个基础URL字符串(可选)来创建一个URL对象。constmyURL=newURL('https://example.com/path?query=123');属性:UR
- ES6-rest参数、数组扩展中的扩展运算符
hx_1199
es6前端ecmascript
rest参数形式为(...变量名)rest参数搭配的变量是一个数组,该变量将多余的参数放入其中。functionadd(...values){console.log(values)}add(2,5,3)//[3,4,5]数组的扩展(...),如同rest参数的逆运算,将一个数组转为用逗号分隔的参数序列。console.log(...[1,2,3])//123扩展运算符主要用于函数调用。functi
- http cookie的作用学习
Miqiuha
http学习网络协议
1.介绍HTTPCookie是服务器发送给客户端(浏览器)的一小段数据,它会被客户端存储,并在后续请求时自动携带,以便服务器识别用户、保持会话状态或存储用户偏好等信息。流程:服务器发送Cookie服务器在HTTP响应中返回Set-Cookie头,将Cookie发送到客户端:HTTP/1.1200OKSet-Cookie:session_id=abc123;Path=/;HttpOnly;Secur
- freerdp 解压安装_FreeRDP的安装方法
weixin_39530509
freerdp解压安装
偶然在网上看到了FreeRDP,编译安装后,果然好用。文档是记录整个安装过程的,备忘!官方网站:http://www.freerdp.com/安装完后运行的命令是:xfreerdp192.168.1.101-uadministrator-p123功能说明(摘自百度快照):1、连接机器ip地址是192.168.1.101,2、登录远程机的账户密码是:-uadministrator-p1233、使用全
- LeeCode题库第七题
苦学LCP的小猪
LeeCode题库pythonleetcode算法
7.整数反转项目场景:给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范围[−231,231−1],就返回0。假设环境不允许存储64位整数(有符号或无符号)。示例1:输入:x=123输出:321示例2:输入:x=-123输出:-321示例3:输入:x=120输出:21示例4:输入:x=0输出:0提示:-231int:IMAX,MAX=-2**3
- Python_机器学习_简单绘图
Richard&仰望星空
python机器学习
importpandasimportmatplotlib.pyplotaspltfrompylabimport*mpl.rcParams['font.sans-serif']=['SimHei']###python画图默认不能中文,如需必要则要加入上述两条语句#折线图绘制data=pandas.read_excel("123.xlsx")#print(data)类似于matlabplot画图操作p
- 心法利器[128] | 2024年算法小结-个人成长-打开思路-生日
机智的叉烧
算法
心法利器本栏目主要和大家一起讨论近期自己学习的心得和体会。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。2023年新的文章合集已经发布,获取方式看这里:又添十万字-CS的陋室2023年文章合集来袭,更有历史文章合集,欢迎下载。往期回顾心法利器[123]|算法面试的八股和非八股讨论心法利器[124]|24年算法思考-大模型的应用与训练篇心法利器[125]|24年算法思考-RAG技术论文和实践小
- java线程Thread和Runnable区别和联系
zx_code
javajvmthread多线程Runnable
我们都晓得java实现线程2种方式,一个是继承Thread,另一个是实现Runnable。
模拟窗口买票,第一例子继承thread,代码如下
package thread;
public class ThreadTest {
public static void main(String[] args) {
Thread1 t1 = new Thread1(
- 【转】JSON与XML的区别比较
丁_新
jsonxml
1.定义介绍
(1).XML定义
扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。
XML是标
- c++ 实现五种基础的排序算法
CrazyMizzz
C++c算法
#include<iostream>
using namespace std;
//辅助函数,交换两数之值
template<class T>
void mySwap(T &x, T &y){
T temp = x;
x = y;
y = temp;
}
const int size = 10;
//一、用直接插入排
- 我的软件
麦田的设计者
我的软件音乐类娱乐放松
这是我写的一款app软件,耗时三个月,是一个根据央视节目开门大吉改变的,提供音调,猜歌曲名。1、手机拥有者在android手机市场下载本APP,同意权限,安装到手机上。2、游客初次进入时会有引导页面提醒用户注册。(同时软件自动播放背景音乐)。3、用户登录到主页后,会有五个模块。a、点击不胫而走,用户得到开门大吉首页部分新闻,点击进入有新闻详情。b、
- linux awk命令详解
被触发
linux awk
awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息
awk处理过程: 依次对每一行进行处理,然后输出
awk命令形式:
awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file
[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=val
- 各种语言比较
_wy_
编程语言
Java Ruby PHP 擅长领域
- oracle 中数据类型为clob的编辑
知了ing
oracle clob
public void updateKpiStatus(String kpiStatus,String taskId){
Connection dbc=null;
Statement stmt=null;
PreparedStatement ps=null;
try {
dbc = new DBConn().getNewConnection();
//stmt = db
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
矮蛋蛋
zookeeper
原文地址:
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
安装和配置详解
本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两
- tomcat数据源
alafqq
tomcat
数据库
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。
没有使用JNDI时我用要这样连接数据库:
03. Class.forName("com.mysql.jdbc.Driver");
04. conn
- 遍历的方法
百合不是茶
遍历
遍历
在java的泛
- linux查看硬件信息的命令
bijian1013
linux
linux查看硬件信息的命令
一.查看CPU:
cat /proc/cpuinfo
二.查看内存:
free
三.查看硬盘:
df
linux下查看硬件信息
1、lspci 列出所有PCI 设备;
lspci - list all PCI devices:列出机器中的PCI设备(声卡、显卡、Modem、网卡、USB、主板集成设备也能
- java常见的ClassNotFoundException
bijian1013
java
1.java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 添加包common-logging.jar2.java.lang.ClassNotFoundException: javax.transaction.Synchronization
- 【Gson五】日期对象的序列化和反序列化
bit1129
反序列化
对日期类型的数据进行序列化和反序列化时,需要考虑如下问题:
1. 序列化时,Date对象序列化的字符串日期格式如何
2. 反序列化时,把日期字符串序列化为Date对象,也需要考虑日期格式问题
3. Date A -> str -> Date B,A和B对象是否equals
默认序列化和反序列化
import com
- 【Spark八十六】Spark Streaming之DStream vs. InputDStream
bit1129
Stream
1. DStream的类说明文档:
/**
* A Discretized Stream (DStream), the basic abstraction in Spark Streaming, is a continuous
* sequence of RDDs (of the same type) representing a continuous st
- 通过nginx获取header信息
ronin47
nginx header
1. 提取整个的Cookies内容到一个变量,然后可以在需要时引用,比如记录到日志里面,
if ( $http_cookie ~* "(.*)$") {
set $all_cookie $1;
}
变量$all_cookie就获得了cookie的值,可以用于运算了
- java-65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
bylijinnan
java
参考了网上的http://blog.csdn.net/peasking_dd/article/details/6342984
写了个java版的:
public class Print_1_To_NDigit {
/**
* Q65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
* 1.使用字符串
- Netty源码学习-ReplayingDecoder
bylijinnan
javanetty
ReplayingDecoder是FrameDecoder的子类,不熟悉FrameDecoder的,可以先看看
http://bylijinnan.iteye.com/blog/1982618
API说,ReplayingDecoder简化了操作,比如:
FrameDecoder在decode时,需要判断数据是否接收完全:
public class IntegerH
- js特殊字符过滤
cngolon
js特殊字符js特殊字符过滤
1.js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号function stripscript(s) { var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]"
- hibernate使用sql查询
ctrain
Hibernate
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.Hibernate;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.Transa
- linux shell脚本中切换用户执行命令方法
daizj
linuxshell命令切换用户
经常在写shell脚本时,会碰到要以另外一个用户来执行相关命令,其方法简单记下:
1、执行单个命令:su - user -c "command"
如:下面命令是以test用户在/data目录下创建test123目录
[root@slave19 /data]# su - test -c "mkdir /data/test123" 
- 好的代码里只要一个 return 语句
dcj3sjt126com
return
别再这样写了:public boolean foo() { if (true) { return true; } else { return false;
- Android动画效果学习
dcj3sjt126com
android
1、透明动画效果
方法一:代码实现
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container, fals
- linux复习笔记之bash shell (4)管道命令
eksliang
linux管道命令汇总linux管道命令linux常用管道命令
转载请出自出处:
http://eksliang.iteye.com/blog/2105461
bash命令执行的完毕以后,通常这个命令都会有返回结果,怎么对这个返回的结果做一些操作呢?那就得用管道命令‘|’。
上面那段话,简单说了下管道命令的作用,那什么事管道命令呢?
答:非常的经典的一句话,记住了,何为管
- Android系统中自定义按键的短按、双击、长按事件
gqdy365
android
在项目中碰到这样的问题:
由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成:
1、单击事件:就是普通key的单击;
2、双击事件:500ms内同一按键单击两次;
3、长按事件:同一按键长按超过1000ms(系统中长按事件为500ms);
4、组合按键:两个以上按键同时按住;
- asp.net获取站点根目录下子目录的名称
hvt
.netC#asp.nethovertreeWeb Forms
使用Visual Studio建立一个.aspx文件(Web Forms),例如hovertree.aspx,在页面上加入一个ListBox代码如下:
<asp:ListBox runat="server" ID="lbKeleyiFolder" />
那么在页面上显示根目录子文件夹的代码如下:
string[] m_sub
- Eclipse程序员要掌握的常用快捷键
justjavac
javaeclipse快捷键ide
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 写道 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可
- c++编程随记
lx.asymmetric
C++笔记
为了字体更好看,改变了格式……
&&运算符:
#include<iostream>
using namespace std;
int main(){
int a=-1,b=4,k;
k=(++a<0)&&!(b--
- linux标准IO缓冲机制研究
音频数据
linux
一、什么是缓存I/O(Buffered I/O)缓存I/O又被称作标准I/O,大多数文件系统默认I/O操作都是缓存I/O。在Linux的缓存I/O机制中,操作系统会将I/O的数据缓存在文件系统的页缓存(page cache)中,也就是说,数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间。1.缓存I/O有以下优点:A.缓存I/O使用了操作系统内核缓冲区,
- 随想 生活
暗黑小菠萝
生活
其实账户之前就申请了,但是决定要自己更新一些东西看也是最近。从毕业到现在已经一年了。没有进步是假的,但是有多大的进步可能只有我自己知道。
毕业的时候班里12个女生,真正最后做到软件开发的只要两个包括我,PS:我不是说测试不好。当时因为考研完全放弃找工作,考研失败,我想这只是我的借口。那个时候才想到为什么大学的时候不能好好的学习技术,增强自己的实战能力,以至于后来找工作比较费劲。我
- 我认为POJO是一个错误的概念
windshome
javaPOJO编程J2EE设计
这篇内容其实没有经过太多的深思熟虑,只是个人一时的感觉。从个人风格上来讲,我倾向简单质朴的设计开发理念;从方法论上,我更加倾向自顶向下的设计;从做事情的目标上来看,我追求质量优先,更愿意使用较为保守和稳妥的理念和方法。
&