- 神经网络-损失函数
红米煮粥
神经网络人工智能深度学习
文章目录一、回归问题的损失函数1.均方误差(MeanSquaredError,MSE)2.平均绝对误差(MeanAbsoluteError,MAE)二、分类问题的损失函数1.0-1损失函数(Zero-OneLossFunction)2.交叉熵损失(Cross-EntropyLoss)3.合页损失(HingeLoss)三、总结在神经网络中,损失函数(LossFunction)扮演着至关重要的角色,它
- 损失函数与反向传播
Star_.
PyTorchpytorch深度学习python
损失函数定义与作用损失函数(lossfunction)在深度学习领域是用来计算搭建模型预测的输出值和真实值之间的误差。1.损失函数越小越好2.计算实际输出与目标之间的差距3.为更新输出提供依据(反向传播)常见的损失函数回归常见的损失函数有:均方差(MeanSquaredError,MSE)、平均绝对误差(MeanAbsoluteErrorLoss,MAE)、HuberLoss是一种将MSE与MAE
- 6.Config配置中心
面具猴
项目的配置文件起名格式:微服务名-test/dev.properties/yml本例子git上项目名为tensquare_parent对应的模块名称为base文件用于为test文件类型为properties一.服务端的配置1.依赖org.springframework.cloudspring-cloud-config-server2.配置#configspring.cloud.config.ser
- Mybatis的核心组件是什么?
传智教育
数据库javasql
MyBatis是一个基于Java的持久层框架,所谓的持久层框架就是专门用来将数据进行持久化的框架,也就是说将数据存储到数据库中的框架。学习并掌握Mybatis,首先就要了解Mybatis的核心组件。下面,我们一起来了解一下Mybatis四大核心组件:SqlSessionFactoryBuilderSqlSessionFactorySqlSessionSQLMapper01SqlSessionFac
- druid连接数据库报错
Aliyev
MySQL连接错误时区问题版本匹配jar包
信息:{dataSource-1}inited10月21,20229:26:36下午com.alibaba.druid.support.logging.JakartaCommonsLoggingImplerror严重:createconnectionSQLException,url:jdbc:mysql://localhost:3306/db1,errorCode0,state01S00java.
- SQLAlchemy有哪些常用的操作方法
Botiway
FlaskWebpython后端web3flasklinux
SQLAlchemy是一个流行的PythonSQL工具包和对象关系映射(ORM)库,它提供了一系列丰富的操作方法用于数据库操作。以下是一些SQLAlchemy常用的操作方法:1.创建表在SQLAlchemy中,可以通过声明式或经典式两种方式创建表。声明式方式较为常用,通过定义Python类来映射数据库表。声明式方式:使用declarative_base()创建一个基类,然后继承这个基类定义模型类,
- cannot import name ‘xx‘ from partially initialized module ‘xx‘(most likely due to a circular 解决方法(全)
码农研究僧
BUG数据库pythoncircularimport
目录1.问题所示2.原理分析3.解决方法1.问题所示出现如下问题:(py3.10)F:\python_project\test>pythonsqlalchemy.pyTraceback(mostrecentcalllast):File"F:\python_project\test\sqlalchemy.py",line1,
- Android的数据库SQLite进行数据存储与SharePreferences存储
程序员小徐同学
笔记android-studio
Android的数据库SQLite进行数据存储与SharePreferences存储SQLite进行数据存储packagecom.example.administrator.myapplicationsqllite;importandroid.content.ContentValues;importandroid.content.Context;importandroid.database.Cur
- PyTorch nn.MSELoss() 均方误差损失函数详解和要点提醒
Hoper.J
PyTorch笔记pytorchMSELoss均方误差
文章目录nn.MSELoss()均方误差损失函数参数数学公式元素版本要点附录参考链接nn.MSELoss()均方误差损失函数torch.nn.MSELoss(size_average=None,reduce=None,reduction='mean')Createsacriterionthatmeasuresthemeansquarederror(squaredL2norm)betweeneach
- SQLServer -ServiceBroker
神毓逍遥-
SQLSERVERSqlServerServiceservicebroker
1.ServiceBroker简介直接把文档原话copy过来吧:SQLServiceBrokerisoneofthebestrecentfeaturesinSQLServer2005becauseitmakesitpossibletowritequeuingandmessage-basedapplications.WithServiceBroker,databasedeveloperscanwri
- 机器学习和深度学习中常见损失函数,包括损失函数的数学公式、推导及其在不同场景中的应用
早起星人
机器学习深度学习人工智能
目录引言什么是损失函数?常见损失函数介绍3.1均方误差(MeanSquaredError,MSE)3.2交叉熵损失(Cross-EntropyLoss)3.3平滑L1损失(SmoothL1Loss)3.4HingeLoss(合页损失)3.5二进制交叉熵损失(BinaryCross-EntropyLoss)3.6KL散度(KLDivergence)3.7Huber损失(HuberLoss)3.8对比
- 【Rust光年纪】深度解读:Rust语言中各类消息队列客户端库详细对比
friklogff
Rust光年纪rust开发语言后端
选择最佳Rust消息队列客户端库:全面对比与分析前言随着现代应用程序的复杂性不断增加,消息队列成为构建可靠、高性能系统的重要组件。本文将介绍一些用于Rust语言的消息队列客户端库,包括AMQP、ApacheKafka、NSQ、ApachePulsar和RocketMQ,探讨它们的核心功能、使用场景、安装配置以及API概览。欢迎订阅专栏:Rust光年纪文章目录选择最佳Rust消息队列客户端库:全面对
- 关于6种Web安全常见的攻防姿势
AI大模型-搬运工
web安全安全网络安全网络网络攻击模型
关于Web安全的问题,是一个老生常谈的问题,作为离用户最近的一层,我们大前端应该把手伸的更远一点。我们最常见的Web安全攻击有以下几种:XSS跨站脚本攻击CSRF跨站请求伪造URL跳转漏洞ClickJacking点击劫持/UI-覆盖攻击SQLInjectionSQL注入OSCommandInjectionOS命令注入一、XSSXSS(CrossSiteScript),中文是跨站脚本攻击;其原本缩写
- WEB渗透Win提权篇-MYSQL-udf
Pluto-2003
渗透测试mysql渗透测试WEB渗透网络安全WEB安全提权
渗透测试60w字全套md笔记:夸克网盘分享Udf:sqlmap-master\udf\mysql\windows\>pythonsqlmap/extra/cloak/cloak.pylib_mysqludf_sys.dll_Mysql>5.1udf.dll放置在lib\pluginMysql<5.1udf.dll放置在c:\windows\system32#showvariableslike'%c
- squid缓存技术
凉博青年
Linuxsquid
squid缓存技术配置squid1、配置squid服务器(1)创建管理squid的用户[root@centos01~]#useradd-M-s/sbin/nologinsquid(2)配置squid[
[email protected]]#./configure--prefix=/usr/local/aquid--sysconfdir=/etc/--enable-linux-netfi
- C++-----计算三角形面积
navi’s electronic
C++c++算法开发语言
#include#includeusingnamespacestd;classPoint{//坐标点类public:constdoublex,y;Point(doublex=0.0,doubley=0.0):x(x),y(y){}//**********found**********doubledistanceTo(constPoint&p)const{//到指定点的距离returnsqrt((x
- go-zero处理本地事务
年少~年
golanggolang后端
go-zero处理本地事务,sqlx.SqlConn提供了基础的事务机制,官方代码varconnsqlx.SqlConnerr:=conn.TransactCtx(context.Background(),func(ctxcontext.Context,sessionsqlx.Session)error{r,err:=session.ExecCtx(ctx,"insertintouser(id,n
- sql初级题_初级开发人员不要避免学习SQL,您将需要它
weixin_26739079
sqlmysql
sql初级题WheneverImeetjuniordevelopers,usually,theyeitherhavenoideaaboutSQLortheyhaveverylimited,practically-unapplicableknowledge.通常,每当我遇到初级开发人员时,他们要么对SQL一无所知,要么掌握的知识非常有限,几乎不适用。Why?Don’ttheylearnSQLduri
- sql注入之post 传参方式的注入
西蒙娜
sql
在输入框里面进行注入需要的注释符#是否存在注入点,注入点在有和数据库服务器交互的地方万能密码1'or1=1#sqlmap之post注入1:将变量参数位置加*uname=name*在sqlmap安装目录下面新建文本文件为x.txtpythonsqlmap.py-rr.txt--dbs-Ddn--tables-Ddn-Ttn--columns-Ddn-Ttn-c1,c2--dumppost注入2:先将
- native sql -ABAP开发从入门到精通笔记
guduchangjian
sql笔记数据库
NativeSQLSQL概要OPENSQL读取数据SelectSelect...Selectsignle....where.列去重数据Selectdistinct...where...当取多条数据时,select结果会保存到内表中。Select...into...语句的结果不是保存在内保中,而是保存到了wa中,这里就要加一个endselect语句。【如果是selectintowa,就要使用ends
- 【机器学习】多元线性回归
Mount256
#机器学习机器学习线性回归人工智能
文章目录多元线性回归模型(multipleregressionmodel)损失/代价函数(costfunction)——均方误差(meansquarederror)批量梯度下降算法(batchgradientdescentalgorithm)特征工程(featureengineering)特征缩放(featurescaling)正则化线性回归(regularizationlinearregress
- SQL注入工具之SQLmap入门操作
测试小鬼
自动化sqlpython软件测试经验分享fiddler开发语言
了解SQLmap基础操作SQLmap是一款自动化的SQL注入工具,可以用于检测和利用SQL注入漏洞。以下是SQLmap的入门操作步骤:1.下载SQLmap:可以从官方网站(https://sqlmap.org/)下载最新版本的SQLmap。2.打开终端:在终端中进入SQLmap所在的目录。3.输入命令:使用以下命令运行SQLmap:pythonsqlmap.py-u其中,;是指要测试的网站的URL
- Python编程读取csv文件数据分别计算RMSE、SD、R
是筱倩阿
pythonpythonnumpy
使用Pandas和NumPy库,从CSV文件中读取数据,并对列名进行了更新。使用循环计算了三组数据的RMSE、标准差和相关系数,并将结果打印输出。其中,RMSE(RootMeanSquaredError)是衡量预测值和真实值之间误差的一种方法;SD(StandardDeviation)是预测值和真实值之间误差的标准差;R(CorrelationCoefficient)是衡量预测值和真实值之间线性关
- torch tensor shape 从 3*,3 到 N,3,3。使用 repeat 而不要 expand
培之
python深度学习机器学习
下面的代码会导致报错同一个内存被多个索引使用。需要改成repeatbatch_rotation_matrix=single_rotation_matrix.unsqueeze(0).expand(N,-1,-1)修改之后,成功运行:batch_rotation_matrix=single_rotation_matrix.repeat(N,1,1)
- BUUCTF/强网杯2019 随便注.堆叠注入?
Visianlee
尝试注入发现过滤preg_match("/select|update|delete|drop|insert|where|\./i",$inject);/i不区分大小写匹配,也过滤了.sqlmap跑一波pythonsqlmap.py-u"http://web16.buuoj.cn/?inject=3"-v3--risk3-Dsupersqli--tables–test-skip=where能跑出数据
- NSQ源码分析之概述
faunjoe
罗道文的私房菜消息队列在互联网公司使用非常普遍,因此也促使我去学习研究消息队列的原理以及细节问题;之前也有接触过消息队列,最主要就是在异步处理方面,当然消息队列还解耦,流量削峰等功能;目前消息队列产品也比较多,例如kafka,ActiveMQ,RabbitMQ,NSQ等等;之前原本打算看kafka,但是处于学习成本(kafka是scala编写,之前scala接触的比较少),所以就先不看kafka,
- 一次闲聊引申对线程优先级的思考
davisjy
工作闲聊偶尔偷偷懒和群内各位iOS大佬吹吹逼,这不来了个多线程相关的问题。一次群聊源于闲聊时对自己的怀疑。Q:主线程的优先级是不是最高的?A:当我看到问题时的回答:是。优先级线程优先级决定了任务开始执后系统资源分配的优先级,例如CPU时间片,网络资源,硬盘资源等。typedefNS_ENUM(NSInteger,NSQualityOfService){NSQualityOfServiceUserI
- B2147 求 f(x,n)
2301_79513322
算法
#include#includedoublef(doublen,doublex){if(n==1)returnsqrt(n+x);elsereturnsqrt(n+f(n-1,x));}intmain(){doublex,n;scanf("%lf%lf",&x,&n);printf("%.2lf",f(n,x));return0;}
- pytorch 之 torch.squeeze() 和 torch.unsqueeze()用法
Allard_c205
第一块:squeeze(),主要是对数据的维度进行压缩,去掉元素数为1的那个维度,使用方式:a.squeeze(N)ortorch.squeeze(a,N),去掉a的第N维度,以此来实现数据a的维度压缩;unsqueeze()与squeeze()函数功能相反,其功能是对数据维度进行扩充,使用方式:a.unsqueeze(N)ortorch.unsqueeze(a,N),在数据a的第N维度上增加一个
- Qt信号-槽
开发呆呆
这篇文档从使用到实现去讲信号-槽,适合小白到使用一两年的。对于Qt使用而言,信号-槽是我们津津乐道的一个功能,那我们先来看我们会怎么使用它。初步认识Qt的信号-槽的写法比较简单。1、如果一个类需要使用信号-槽,那么需要这个类继承从QObject继承,并且在类中调用使用宏Q_OBJECT如果在非QObject的子类中使用Q_OBJECT,将编译报错:error:ClasscontainsQ_OBJE
- html页面js获取参数值
0624chenhong
html
1.js获取参数值js
function GetQueryString(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = windo
- MongoDB 在多线程高并发下的问题
BigCat2013
mongodbDB高并发重复数据
最近项目用到 MongoDB , 主要是一些读取数据及改状态位的操作. 因为是结合了最近流行的 Storm进行大数据的分析处理,并将分析结果插入Vertica数据库,所以在多线程高并发的情境下, 会发现 Vertica 数据库中有部分重复的数据. 这到底是什么原因导致的呢?笔者开始也是一筹莫 展,重复去看 MongoDB 的 API , 终于有了新发现 :
com.mongodb.DB 这个类有
- c++ 用类模版实现链表(c++语言程序设计第四版示例代码)
CrazyMizzz
数据结构C++
#include<iostream>
#include<cassert>
using namespace std;
template<class T>
class Node
{
private:
Node<T> * next;
public:
T data;
- 最近情况
麦田的设计者
感慨考试生活
在五月黄梅天的岁月里,一年两次的软考又要开始了。到目前为止,我已经考了多达三次的软考,最后的结果就是通过了初级考试(程序员)。人啊,就是不满足,考了初级就希望考中级,于是,这学期我就报考了中级,明天就要考试。感觉机会不大,期待奇迹发生吧。这个学期忙于练车,写项目,反正最后是一团糟。后天还要考试科目二。这个星期真的是很艰难的一周,希望能快点度过。
- linux系统中用pkill踢出在线登录用户
被触发
linux
由于linux服务器允许多用户登录,公司很多人知道密码,工作造成一定的障碍所以需要有时踢出指定的用户
1/#who 查出当前有那些终端登录(用 w 命令更详细)
# who
root pts/0 2010-10-28 09:36 (192
- 仿QQ聊天第二版
肆无忌惮_
qq
在第一版之上的改进内容:
第一版链接:
http://479001499.iteye.com/admin/blogs/2100893
用map存起来号码对应的聊天窗口对象,解决私聊的时候所有消息发到一个窗口的问题.
增加ViewInfo类,这个是信息预览的窗口,如果是自己的信息,则可以进行编辑.
信息修改后上传至服务器再告诉所有用户,自己的窗口
- java读取配置文件
知了ing
1,java读取.properties配置文件
InputStream in;
try {
in = test.class.getClassLoader().getResourceAsStream("config/ipnetOracle.properties");//配置文件的路径
Properties p = new Properties()
- __attribute__ 你知多少?
矮蛋蛋
C++gcc
原文地址:
http://www.cnblogs.com/astwish/p/3460618.html
GNU C 的一大特色就是__attribute__ 机制。__attribute__ 可以设置函数属性(Function Attribute )、变量属性(Variable Attribute )和类型属性(Type Attribute )。
__attribute__ 书写特征是:
- jsoup使用笔记
alleni123
java爬虫JSoup
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.7.3</version>
</dependency>
2014/08/28
今天遇到这种形式,
- JAVA中的集合 Collectio 和Map的简单使用及方法
百合不是茶
listmapset
List ,set ,map的使用方法和区别
java容器类类库的用途是保存对象,并将其分为两个概念:
Collection集合:一个独立的序列,这些序列都服从一条或多条规则;List必须按顺序保存元素 ,set不能重复元素;Queue按照排队规则来确定对象产生的顺序(通常与他们被插入的
- 杀LINUX的JOB进程
bijian1013
linuxunix
今天发现数据库一个JOB一直在执行,都执行了好几个小时还在执行,所以想办法给删除掉
系统环境:
ORACLE 10G
Linux操作系统
操作步骤如下:
第一步.查询出来那个job在运行,找个对应的SID字段
select * from dba_jobs_running--找到job对应的sid
&n
- Spring AOP详解
bijian1013
javaspringAOP
最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP来解决。一方面是为了以更加灵活的方式来解决问题,另一方面是借此机会深入学习Spring AOP相关的内容。例如,以下需求不用AOP肯定也能解决,至于是否牵强附会,仁者见仁智者见智。
1.对部分函数的调用进行日志记录,用于观察特定问题在运行过程中的函数调用
- [Gson六]Gson类型适配器(TypeAdapter)
bit1129
Adapter
TypeAdapter的使用动机
Gson在序列化和反序列化时,默认情况下,是按照POJO类的字段属性名和JSON串键进行一一映射匹配,然后把JSON串的键对应的值转换成POJO相同字段对应的值,反之亦然,在这个过程中有一个JSON串Key对应的Value和对象之间如何转换(序列化/反序列化)的问题。
以Date为例,在序列化和反序列化时,Gson默认使用java.
- 【spark八十七】给定Driver Program, 如何判断哪些代码在Driver运行,哪些代码在Worker上执行
bit1129
driver
Driver Program是用户编写的提交给Spark集群执行的application,它包含两部分
作为驱动: Driver与Master、Worker协作完成application进程的启动、DAG划分、计算任务封装、计算任务分发到各个计算节点(Worker)、计算资源的分配等。
计算逻辑本身,当计算任务在Worker执行时,执行计算逻辑完成application的计算任务
- nginx 经验总结
ronin47
nginx 总结
深感nginx的强大,只学了皮毛,把学下的记录。
获取Header 信息,一般是以$http_XX(XX是小写)
获取body,通过接口,再展开,根据K取V
获取uri,以$arg_XX
&n
- 轩辕互动-1.求三个整数中第二大的数2.整型数组的平衡点
bylijinnan
数组
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ExoWeb {
public static void main(String[] args) {
ExoWeb ew=new ExoWeb();
System.out.pri
- Netty源码学习-Java-NIO-Reactor
bylijinnan
java多线程netty
Netty里面采用了NIO-based Reactor Pattern
了解这个模式对学习Netty非常有帮助
参考以下两篇文章:
http://jeewanthad.blogspot.com/2013/02/reactor-pattern-explained-part-1.html
http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf
- AOP通俗理解
cngolon
springAOP
1.我所知道的aop 初看aop,上来就是一大堆术语,而且还有个拉风的名字,面向切面编程,都说是OOP的一种有益补充等等。一下子让你不知所措,心想着:怪不得很多人都和 我说aop多难多难。当我看进去以后,我才发现:它就是一些java基础上的朴实无华的应用,包括ioc,包括许许多多这样的名词,都是万变不离其宗而 已。 2.为什么用aop&nb
- cursor variable 实例
ctrain
variable
create or replace procedure proc_test01
as
type emp_row is record(
empno emp.empno%type,
ename emp.ename%type,
job emp.job%type,
mgr emp.mgr%type,
hiberdate emp.hiredate%type,
sal emp.sal%t
- shell报bash: service: command not found解决方法
daizj
linuxshellservicejps
今天在执行一个脚本时,本来是想在脚本中启动hdfs和hive等程序,可以在执行到service hive-server start等启动服务的命令时会报错,最终解决方法记录一下:
脚本报错如下:
./olap_quick_intall.sh: line 57: service: command not found
./olap_quick_intall.sh: line 59
- 40个迹象表明你还是PHP菜鸟
dcj3sjt126com
设计模式PHP正则表达式oop
你是PHP菜鸟,如果你:1. 不会利用如phpDoc 这样的工具来恰当地注释你的代码2. 对优秀的集成开发环境如Zend Studio 或Eclipse PDT 视而不见3. 从未用过任何形式的版本控制系统,如Subclipse4. 不采用某种编码与命名标准 ,以及通用约定,不能在项目开发周期里贯彻落实5. 不使用统一开发方式6. 不转换(或)也不验证某些输入或SQL查询串(译注:参考PHP相关函
- Android逐帧动画的实现
dcj3sjt126com
android
一、代码实现:
private ImageView iv;
private AnimationDrawable ad;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout
- java远程调用linux的命令或者脚本
eksliang
linuxganymed-ssh2
转载请出自出处:
http://eksliang.iteye.com/blog/2105862
Java通过SSH2协议执行远程Shell脚本(ganymed-ssh2-build210.jar)
使用步骤如下:
1.导包
官网下载:
http://www.ganymed.ethz.ch/ssh2/
ma
- adb端口被占用问题
gqdy365
adb
最近重新安装的电脑,配置了新环境,老是出现:
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
百度了一下,说是端口被占用,我开个eclipse,然后打开cmd,就提示这个,很烦人。
一个比较彻底的解决办法就是修改
- ASP.NET使用FileUpload上传文件
hvt
.netC#hovertreeasp.netwebform
前台代码:
<asp:FileUpload ID="fuKeleyi" runat="server" />
<asp:Button ID="BtnUp" runat="server" onclick="BtnUp_Click" Text="上 传" />
- 代码之谜(四)- 浮点数(从惊讶到思考)
justjavac
浮点数精度代码之谜IEEE
在『代码之谜』系列的前几篇文章中,很多次出现了浮点数。 浮点数在很多编程语言中被称为简单数据类型,其实,浮点数比起那些复杂数据类型(比如字符串)来说, 一点都不简单。
单单是说明 IEEE浮点数 就可以写一本书了,我将用几篇博文来简单的说说我所理解的浮点数,算是抛砖引玉吧。 一次面试
记得多年前我招聘 Java 程序员时的一次关于浮点数、二分法、编码的面试, 多年以后,他已经称为了一名很出色的
- 数据结构随记_1
lx.asymmetric
数据结构笔记
第一章
1.数据结构包括数据的
逻辑结构、数据的物理/存储结构和数据的逻辑关系这三个方面的内容。 2.数据的存储结构可用四种基本的存储方法表示,它们分别是
顺序存储、链式存储 、索引存储 和 散列存储。 3.数据运算最常用的有五种,分别是
查找/检索、排序、插入、删除、修改。 4.算法主要有以下五个特性:
输入、输出、可行性、确定性和有穷性。 5.算法分析的
- linux的会话和进程组
网络接口
linux
会话: 一个或多个进程组。起于用户登录,终止于用户退出。此期间所有进程都属于这个会话期。会话首进程:调用setsid创建会话的进程1.规定组长进程不能调用setsid,因为调用setsid后,调用进程会成为新的进程组的组长进程.如何保证? 先调用fork,然后终止父进程,此时由于子进程的进程组ID为父进程的进程组ID,而子进程的ID是重新分配的,所以保证子进程不会是进程组长,从而子进程可以调用se
- 二维数组 元素的连续求解
1140566087
二维数组ACM
import java.util.HashMap;
public class Title {
public static void main(String[] args){
f();
}
// 二位数组的应用
//12、二维数组中,哪一行或哪一列的连续存放的0的个数最多,是几个0。注意,是“连续”。
public static void f(){
- 也谈什么时候Java比C++快
windshome
javaC++
刚打开iteye就看到这个标题“Java什么时候比C++快”,觉得很好笑。
你要比,就比同等水平的基础上的相比,笨蛋写得C代码和C++代码,去和高手写的Java代码比效率,有什么意义呢?
我是写密码算法的,深刻知道算法C和C++实现和Java实现之间的效率差,甚至也比对过C代码和汇编代码的效率差,计算机是个死的东西,再怎么优化,Java也就是和C