ABAP 新语法记录(一)

2023-10-27

主要内容

  • 内联声明

  • 构造表达式

  • 内表操作

  • Open SQL

  • 其他


 

 

本文列出了ABAP新语法的一些使用方式,供大家学习参考。

 

内联声明

代码实现:

<pre>*&amp;----------------------------------------------------------------------
* 主题一:内联声明
* 语法:DATA(...) ,FILED-SYMBOL()
* 1. 定义变量
* 2. 定义结构
* 3. 定义内表
* 4. 定义指针
*&amp;---------------------------------------------------------------------*
* 记录时间:23.03.2019                          记录人: YALUOO
*&amp;---------------------------------------------------------------------*
*&amp;*********取数
  "客户的标签信息表
  SELECT *
    FROM ztcust_tag
    INTO TABLE @DATA(gt_data)
      UP TO 5 ROWS.
    cl_demo_output=&gt;write( gt_data ).

*&amp;*********定义变量
  DATA(lv_card_no) = '1000023312'.     "会员号
  cl_demo_output=&gt;write( lv_card_no ).

*&amp;*********定义结构
  READ TABLE gt_data INTO DATA(gs_data) INDEX 1.
  IF sy-subrc EQ 0.
    DATA(ls_data) = gs_data.
    cl_demo_output=&gt;write( ls_data ).
  ENDIF.

*&amp;*********定义内表
  DATA(lt_data) = gt_data.
  cl_demo_output=&gt;write( lt_data ).

*&amp;*********定义指针
  LOOP AT lt_data ASSIGNING FIELD-SYMBOL(&lt;fs_data&gt;) WHERE card_no EQ lv_card_no.
    &lt;fs_data&gt;-create_user = 'YALUOO'. "修改创建人
  ENDLOOP.
  cl_demo_output=&gt;write( lt_data ).
  cl_demo_output=&gt;display(  ).
  </pre>

运行结果:

![在这里插入图片描述](https://img-blog.csdnimg.cn/img_convert/834460becf52d06db49bd37ded592db1.png#pic_center)

 

构造表达式

代码实现:

*&----------------------------------------------------------------------
* 主题二:构造表达式
* 1. 实现构造: NWE -创建数据对象或类的实现
*     1.1 构造单值
*     1.2 构造结构
*     1.3 构造内表
*     1.4 构造类
* 2. 值构造:  VALUE - 创建一个类型为dypee的数据
*     2.1 构造结构
*         语法: ... VALUE dtype | #(  [BASE dobj] comp1 = dobj1 comp2 = dobj2 ... ) ...
*     2.2 构造内表 :
*         语法: ... VALUE dtype | #( [BASE itab] (  (line1-com1 = dobj1) ( line2 ..) ... ) ...
*     note: dytpe可接具体类型或者# ,接#数据类型必须确定
*           可以嵌套使用;
*           内表赋值不能带表头;
* 3. 组件构造: CORRESPONDING
*         语法:... CORRESPONDING dtype | #(  [BASE dobj] comp1 = dobj1 comp2 = dobj2 ... ) ...
*&---------------------------------------------------------------------*
* 记录时间:23.03.2019                          记录人: YALUOO
*&---------------------------------------------------------------------*
" 自定义类型
TYPES: BEGIN OF ty_man,
         name   TYPE char10,    " 姓名
         sex    TYPE char1,       " 性别
         age    TYPE p DECIMALS 2," 年龄
         school TYPE char20,      " 学校
       END OF ty_man.
DATA: gt_man TYPE TABLE OF ty_man.
*&*********结构赋值
DATA(gs_man) = VALUE ty_man( name = 'Tom' sex = 'B' ).
cl_demo_output=>write( gs_man ).

"附加年龄信息
gs_man = VALUE #( name = ‘Tom’ sex = ‘B’ age = 18 ).
*DATA(gs_man_02) = VALUE #( name = ‘Tom’ sex = ‘B’ age = 18 ) . "错误,未明确类型
cl_demo_output=>write( gs_man ).

"附加学校信息
gs_man = VALUE ty_man( BASE gs_man school = ‘A SCHOOL’ ).
cl_demo_output=>write( gs_man ).

"调整学校信息
gs_man = VALUE #( BASE gs_man school = ‘B SCHOOL’ ).
cl_demo_output=>write( gs_man ).

*&*********内表赋值
gt_man = VALUE #( ( name = ‘Anna’ sex = ‘G’ age = 17 ) ( name = ‘Ann’ sex = ‘G’ age = 16 ) ).
cl_demo_output=>write( gt_man ).

"内表基础上附加额外数据
gt_man = VALUE #( BASE gt_man ( name = ‘Xiaohong’ sex = ‘G’ age = 20 school = ‘C SCHOOL’ )
( name = ‘Xiaoming’ sex = ‘B’ age = 21 school = ‘D SCHOOL’ ) ).
cl_demo_output=>write( gt_man ).
cl_demo_output=>display( ).

&*********Range 表赋值
DATA: r_data TYPE RANGE OF ztcust_tag-data_type. "内表不带表头
RANGES: r_data_01 FOR ztcust_tag-data_type. "内表带表头-不支持

"逐步往下填充内表数据
r_data = VALUE #( sign = ‘I’ option = ‘BT’ ( low = 10 high = 20 )
( low = 100 high = 150 )
option = ‘GT’ ( low = 180 )
option = ‘LT’ ( low = 200 )
option = ‘EQ’ ( low = 8 )
sign = ‘E’ option = ‘BT’ ( low = 15 high = 18 )
).
cl_demo_output=>write( r_data ).
cl_demo_output=>display( ).

运行结果:

 

 

代码实现:

TYPES: BEGIN OF ty_data.
       INCLUDE TYPE ztcust_tag.
TYPES: flag TYPE char1,
       END OF ty_data.

TYPES: BEGIN OF ty_data_t.
INCLUDE TYPE ztcust_tag.
TYPES: flag_t TYPE char1,
END OF ty_data_t.

DATA: gs_data_02 TYPE ty_data,
gs_data_03 TYPE ty_data_t.

*&*********取数
SELECT SINGLE *
FROM ztcust_tag
INTO @DATA(gs_data).

*&*********对应字段赋值
gs_data_02 = CORRESPONDING #( gs_data ).
cl_demo_output=>write( gs_data_02 ).

gs_data_03-flag_t = abap_true.
gs_data_03 = CORRESPONDING #( BASE ( gs_data_03 ) gs_data_02 )."不指定BASE 初始值会丢失
cl_demo_output=>write( gs_data_03 ).

gs_data_03 = CORRESPONDING #( gs_data_02 )."初始值丢失
cl_demo_output=>write( gs_data_03 ).
cl_demo_output=>display( ).

运行结果:

内表操作

代码实现:

*&----------------------------------------------------------------------
* 主题三:内表操作
* 1. 内表表达式- 相当于READ TABLE
*    语法:… itab[ … ] …
*     note: 如果未找到对应的记录就会抛出CX_SY_ITAB_LINE_NOT_FOUND异常,SY-SUBRC不会记录
*           可以通过line_exists预定义函数改进
* 2. 內表预定义函数
*     2.1 line_exists( ) - 判断记录是否存在
*     2.2 line_index( )  - 获取符合记录的索引值
* 3. 內表推导 - FOR 理解为LOOP,是对实现操作符 NEW 和值操作符VALUE的一种增强,作用是构造內表内容
*     语法1 : …FOR i = ... [THEN expr]  UNTIL | WHILE  log_exp ...
*     语法2 : …FOR wa|<fs> IN itab [INDEX INTO idx][cond][let_exp]...
* 4. 內表筛选-FILTER -筛选内表中的数据
*     语法:  FILTER  type(  itab   [EXCEPT]   [IN ftab]   [USING KEY keyname ]
*                            WHERE c1 op f1  [AND c2 op f2  [...] ]  ) ...
*      note: WHERE对应过滤的条件,是必须要指定的,注意有些操作符是不能在WHERE中使用的,如:OR , NOT 等
*            EXCEPT如果不指定则表示满足条件的找出来,如果指定则表示不满足条件的找出来
* 5. 內表缩减
*      语法: ... REDUCE type(
*                              [let_exp]
*                              INIT {x1 = rhs1}|{<x1> = wrexpr1}|{x1|<x1> TYPE dtype1}
*                                   {x2 = rhs2}|{<x2> = wrexpr2}|{x2|<x2> TYPE dtype2}
*                                   ...
*                              FOR for_exp1
*                              FOR for_exp2
*                              ...
*                              NEXT ...
*                                   {x1 = rhs1}|{<x1> = wrexpr1}
*                                   {x2 = rhs2}|{<x2> = wrexpr2}
*                                   ... ) ...
* 6. 内表分组
*&---------------------------------------------------------------------*
* 记录时间:23.03.2019                           记录人: YALUOO
*&---------------------------------------------------------------------*

*&*********取数
SELECT *
FROM ztcust_tag
INTO TABLE @DATA(gt_data)
UP TO 5 ROWS.

*&*********定义变量
DATA(lv_card_no) = ‘1000023312’. "会员号
cl_demo_output=>write( gt_data ).

"通过索引值判断某一行记录是否存在,也可通过条件判断
IF line_exists( gt_data[ 4 ] ).
"获取第4行记录
DATA(ls_data) = gt_data[ 4 ].
"获取第4行记录中的标签类型
DATA(lv_classify) = gt_data[ 4 ]-classify."标签类型
cl_demo_output=>write( ls_data ).
cl_demo_output=>write( lv_classify ).
ENDIF.

"获取符合条件的索引值,未找到LV_INDEX为0
DATA(lv_index) = line_index( gt_data[ card_no = lv_card_no classify = lv_classify ] ).
IF lv_index NE 0 AND line_exists( gt_data[ lv_index + 1 ] ) .
CLEAR ls_data.
"获取下一行记录
ls_data = gt_data[ lv_index + 1 ].
cl_demo_output=>write( ls_data ).
ENDIF.

cl_demo_output=>display( ).

运行结果:

代码实现:

  TYPES: BEGIN OF ty_line,
           col1 TYPE i,
           col2 TYPE i,
           col3 TYPE i,
         END OF ty_line,      "结构体
         ty_tab TYPE STANDARD TABLE OF ty_line WITH EMPTY KEY.

*&*********通过语法1给新內表赋值 - 类似于JAVA中的FOR循环
"for每次遍历一次都将结果,通过value赋值给内表gt_itab
DATA(gt_itab) = VALUE ty_tab( FOR j = 11 THEN j + 10 UNTIL j > 40 "初始值,递增量,结束条件
" 结构中的字段赋值-参考类型ty_tab
( col1 = j col2 = j + 1 col3 = j + 2 )
"11 12 13 - value 到 gt_itab
"21 22 23 - value 到 gt_itab
"31 32 33 - value 到 gt_itab
"41 - 结束循环
).
cl_demo_output=>display( gt_itab ).

运行结果:

代码实现:

*&*********同过语法2给新內表赋值
*&*********取数
    "客户标签信息
     SELECT *
       FROM ztcust_tag
       INTO TABLE @DATA(gt_data)
         UP TO 5 ROWS.
IF gt_data IS NOT INITIAL.
  "标签日期日志表
  SELECT *
    FROM ztcust_tag_log
    INTO TABLE @DATA(gt_data_t)
     FOR ALL ENTRIES IN @gt_data
   WHERE tag_id = @gt_data-tag_id.

   SORT gt_data_t BY tag_id.
   DELETE ADJACENT DUPLICATES FROM gt_data_t COMPARING tag_id.
ENDIF.

 cl_demo_output=&gt;write( gt_data ).
 cl_demo_output=&gt;write( gt_data_t ).

TYPES: BEGIN OF ty_tag_line,
      "标签表
       tag_id        TYPE ztcust_tag-tag_id,          "标签ID
       card_no       TYPE ztcust_tag-card_no,         "会员号
       tag_name      TYPE ztcust_tag-tag_name,        "标签值
       "日志表
       sernumber     TYPE ztcust_tag_log-sernumber,   "流水号
       uname         TYPE ztcust_tag_log-uname,       "用户名
       log_date      TYPE ztcust_tag_log-log_date,    "备份日期
       log_time      TYPE ztcust_tag_log-log_time,    "备份时间
       message_type  TYPE ztcust_tag_log-message_type,"消息类型
       message       TYPE ztcust_tag_log-message,     "消息文本
     END OF ty_tag_line,
     ty_tag_tab TYPE STANDARD TABLE OF ty_tag_line WITH EMPTY KEY.

*&*********将标签表和日志表的数据整合在一起,构建新的内表
DATA(gt_itab) = VALUE ty_tag_tab( FOR ls_itab IN gt_data WHERE ( classify = ‘brands’ )"遍历标签类型为brands; ls_itab 为隐形声明或者<fs>
(
tag_id = ls_itab-tag_id
card_no = ls_itab-card_no
tag_name = ls_itab-tag_name
sernumber = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-sernumber ) "通过VALUE语句和内表表达式赋值
uname = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-uname )
log_date = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-log_date )
log_time = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-log_time )
message_type = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-message_type )
message = VALUE #( gt_data_t[ tag_id = ls_itab-tag_id ]-message )
)
).
cl_demo_output=>write( gt_itab ).

*&*********使用操作符FILTER过滤
DATA: gt_filter TYPE HASHED TABLE OF ty_tag_line
WITH UNIQUE KEY uname.

***INitialize filter Table
gt_filter = VALUE #( ( uname = ‘XUWENPAN’ ) ).

"找出满足条件的数据
DATA(gt_out) = FILTER #( gt_itab IN gt_filter WHERE uname = uname ) .
cl_demo_output=>write( gt_out ).

"找出不满足条件的数据
DATA(gt_out_t) = FILTER #( gt_itab EXCEPT IN gt_filter WHERE uname = uname ) .
cl_demo_output=>write( gt_out_t ).

cl_demo_output=>display( ).

 

运行结果:

代码实现:

*&*********取数
TYPES: BEGIN OF ty_man,
         name   TYPE char10,    " 姓名
         sex    TYPE char1,       " 性别
         age    TYPE p DECIMALS 2," 年龄
         school TYPE char20,      " 学校
       END OF ty_man.
DATA: gt_man TYPE TABLE OF ty_man.

gt_man = VALUE #( ( name = ‘Anna’ sex = ‘G’ age = 17 )
( name = ‘Ann’ sex = ‘G’ age = 16 ) ).
cl_demo_output=>write( gt_man ).

"内表基础上附加额外数据
gt_man = VALUE #( BASE gt_man ( name = ‘Xiaohong’ sex = ‘G’ age = 20 school = ‘C SCHOOL’ )
( name = ‘Xiaoming’ sex = ‘B’ age = 21 school = ‘D SCHOOL’ ) ).
cl_demo_output=>write( gt_man ).

"内表行数
DATA(lv_lines) = lines( gt_man ).
"内表中符合条件的数据有几条
DATA(lv_lines_g) = REDUCE i( INIT x = 0
FOR ls_man IN gt_man WHERE ( sex = ‘G’ )
NEXT x = x + 1 ).
cl_demo_output=>write( lv_lines ).
cl_demo_output=>write( lv_lines_g ).

"累计内表中符合条件的年龄之和
TYPES: ty_age TYPE p DECIMALS 2.
DATA(lv_sum_age) = REDUCE ty_age( INIT dage = VALUE ty_age( )
FOR wa IN gt_man WHERE ( sex = ‘G’ )
NEXT dage = dage + wa-age ).
cl_demo_output=>write( lv_sum_age ).

"综合例子
TYPES:BEGIN OF ty_result,
sum TYPE p DECIMALS 2, "总和
max TYPE p DECIMALS 2, "最大值
avg TYPE p DECIMALS 2, "平均
cunt TYPE i, "记录数
END OF ty_result.

DATA(ls_result) = REDUCE ty_result( INIT res = VALUE ty_result( ) "可以默认值:ty_result( min = 0 max = 0 )
FOR <fs_man> IN gt_man WHERE ( sex = ‘G’ ) "性别为G
NEXT res-sum = res-sum + <fs_man>-age "年龄总和
res-max = nmax( val1 = res-max val2 = <fs_man>-age )"最大年龄
res-cunt = res-cunt + 1 "满足条件的条目数
).

ls_result-avg = ls_result-sum / ls_result-cunt. "平均值
cl_demo_output=>write( ls_result ).

cl_demo_output=>display( ).

 

运行结果:

 

Open SQL

代码实现:

 

*&----------------------------------------------------------------------
* 主题四:Open SQL
*
*&---------------------------------------------------------------------*
* 记录时间:23.03.2019                          记录人: YALUOO
*&---------------------------------------------------------------------*
    DATA(lv_card_no) = '1000023083'.
SELECT a~tag_id,     "标签ID
       card_no,       "会员号
       tag_name,      "会员值
       sernumber,     "流水号
       uname,         "用户名
       log_date,      "备份日期
       log_time,      "备份时间
       message_type,  "消息类型
       message        "消息文本
  FROM ztcust_tag AS a
  INNER JOIN ztcust_tag_log AS b
    ON a~tag_id = b~tag_id
  INTO TABLE @DATA(gt_tag)
 WHERE a~card_no = '1000023312' OR a~card_no = @lv_card_no
   AND classify  = 'brands' .

cl_demo_output=>display( gt_tag ).

 

运行结果:

 

其他

 待补充。。。

 

 

 说明:1. 以上为个人总结,如有纰漏请留言,谢谢。

    2. 本文部分内容参考 http://www.cnblogs.com/mingdashu/p/6744637.html

  

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ABAP 新语法记录(一) 的相关文章

  • 安装 Hana Studio

    1 从sap 官网下载下来的安装包是 sar 类型的压缩包 2 需要用专门的解压工具 SAPCAR 3 运行sapcar 工具和安装包放到英文路径下 win r 输入cmd 输入CD SAPCAR保存路径 我的保存在 出现这种 没有打开相应
  • 创建计划行确认数量为0的销售订单

    需求 通过BAPI函数创建销售订单 并且计划行里的确认的数量为0 解决方法 使用BAPI BAPI SALESORDER CREATEFROMDAT2创建SO后 再使用函数 SD BACKORDER UPDATE 对确认的数量进行修改 ti
  • SAP-基于批次特定计量单位的应用-01-产品数量管理

    原文链接 https mp weixin qq com s zknWGuz2lU387vAGSiykw 大家可以关注我个人公众号 所有分享内容 会在公众号第一时间推送 且阅读排版更好 愿大家的学习 轻松且愉快 如果大家觉得有用 希望转发关注
  • ChatGPT懂SAP吗?跟ChatGPT聊完后,我暂时还不担心会被它取代岗位

    我弄了个ChatGPT账号 随便问了一下他SAP的问题 它的回答还是比较有意思的 贴出来跟大家分享一下 问题1 我是 SAP 开发工程师 你有什么可以帮到我 作为一个语言模型 我可以为您提供关于SAP开发的一般性建议 以及关于如何使用SAP
  • SAP BAPI_ACC_DOCUMENT_POST记账码问题

    今天遇见一个问题 使用BAPI ACC DOCUMENT POST过账 或BAPI ACC DOCUMENT CHECK检查数据 时 报错 借 贷标记不一致 刚开始以为是数据的问题 调试后发现数据的借贷平衡 金额也没有问题 联想到记账码是通
  • 三步搞定ABAP DOI操作EXCEL

    ABAP可以使用OLE与DOI两种方式实现操作EXCEL 使用OLE时 每个单元格的值和样式都需要写代码实现 特别是对于不规则的格式 代码量巨大 而DOI是从服务器已经上传的EXCEL模板中下载模板然后打开修改实现数据保存 当然 也可以直接
  • SAP MASS 扩展物料的仓库管理视图

    SAP MASS 扩展物料的仓库管理视图 执行事务代码 MASS 进入如下界面 Object Type BUS1002 Materials industry 执行 进入如下界面 选中 Material Data for Each Wareh
  • CNS0项目创建交货单增加销售办事处

    1 业务需求 1 1 销售办事处介绍 销售办事处是指在企业中负责销售活动的区域性单位或部门 在SD模块中 可以表示企业的不同销售地点 销售办公室 分销中心或分公司 销售办事处扮演着多种角色和职责 例如 销售活动管理 销售办事处负责管理和监控
  • 将 ALV 输出网格中的复选框标记为选中

    我正在使用类创建 ALV 输出网格cl gui alv grid 使用 fieldcatalog 的相应记录将输出表的其中一列定义为复选框 ls fcat checkbox X ls fcat edit X 对于包含复选框的列的所有记录 它
  • 不使用TMS将TR文件推送到SAP ERP系统

    我是 salesforce com 开发人员 我需要构建一个简单的 SFDC SAP 集成场景以用于演示目的 我对 SAP 完全没有经验 但我们至少有一个 SAP 演示系统 我目前只能通过 SAP GUI 访问 现在 第三方集成解决方案提供
  • HTTPS 通信失败 ABAP

    我正在开发一个应连接到两个 Web 应用程序的应用程序 第一个 Web 应用程序已完成 http example com 不幸的是 第二个 Web 应用程序使用 HTTPS https example com 抛出这个错误 Http Com
  • 在 WHERE 中使用 =、>=、<= 条件优化 LOOP AT

    我的内表包含大量数据 我有以下代码 LOOP AT lt tab INTO ls tab WHERE value1 EQ lv id1 AND value2 LE lv id2 AND value3 GE lv id3 IF ls tab
  • 访问 RFC 调用系统的堆栈内存

    当程序在 SAP ECC 中运行时 系统堆栈 存储所有全局变量 无论在该单个会话中调用什么模块 程序 当它调用支持 RFC 的功能模块 FM 时 会在被调用系统中创建一个新的系统堆栈 并且当被调用 FM 完成时 只能在 ECC 中检索被调用
  • 如何使用REUSE_ALV_FIELDCATALOG_MERGE功能模块?

    我正在尝试使用功能模块REUSE ALV FIELDCATALOG MERGE传递 ddic 中的字段标签以显示在 alv 报告的列标题中 但是 那没有用 如果我评论I STRUCTURE NAME TY YNAH CUS OBJ REQ
  • ABAP中的求值顺序

    ABAP 是否有明确的评估顺序 例如 在表达式中foo bar 是否可以保证哪种方法foo and bar 首先评估 执行 在 ABAP 关键字文档中找不到此类信息 ABAP 文档 arith exp 算术运算符 https help sa
  • 如何跳过选择屏幕上的必填字段?

    我希望当我单击 Iptal 按钮时它跳过必填字段 但我不想在没有 强制 的情况下控制强制字段 我想在文本框中看到复选标记 例如屏幕截图 通常 当没有必填字段时 Iptal 按钮会调用不同的屏幕 注意 屏幕是标准选择屏幕 我解决这个问题的方法
  • 更新标准表中的字段 LIPS-LFIMG 时出现问题

    所有的流程看起来都不错 但是当通过调用函数时 更新也失败 需要更新的字段没有更新 不知道问题出在哪里 有人可以帮我解决这个问题吗 我错过了什么步骤吗 错误消息登录 LT PROT DATA LT PROT LIKE PROTT OCCURS
  • 如何找到调用该方法的ABAP程序/FM?

    我是SAP SD模块专家 经常需要调试代码 有时我需要知道哪些程序 FM 地址特定的表 我用使用地点在 SE11 中的表中 它会找到寻址该表的类方法 但是当我使用使用地点对于类方法 系统找不到任何内容 你知道如何找到调用此方法的程序或FM吗
  • 7.02之前的ABAP中如何编码JSON

    正如霍斯特 凯勒在他的著作中提到的ABAP 和 JSON http scn sap com people horst keller blog 2013 01 07 abap and json帖子 ABAP 原生支持 7 02 和 7 03
  • 调用 HTTP_POST 时出现 Bad Request 错误?

    我有一个关于 SAP 功能模块 http post 的问题 我只想将 SAP 中的一条短消息 msg 发布到我之前安装的推送通知服务器 pushd Github Projekt 现在我不知道如何传递消息 我用测试符号测试了 FM CALL

随机推荐

  • altium designer执行DRC检查+消除绿色错误

    由原理图生成PCB以后 各种显示绿色 也即PCB报错 如下图 绿色的原因是DRC Design Rule Check 检查未通过 解决方法是正确设置规则 但是在此之前 为了观感 我们先掩耳盗铃一下 临时清除绿色 步骤是 菜单栏 gt 工具
  • 线性代数-向量,矩阵,线性变换

    一 向量 向量要求具有两个条件 长度 大小 方向 二维 三维 计算机中 向量可看做列表 图中第一个列表有两行 我们说它是二维向量 第二个列表有四行 我们说他是四维向量 向量的运算 向量加法 向量加法 将对应的行相加 将向量w的起点平移到向量
  • Java基础(2)面向对象的理解

    面向对象学习 面向对象与面向过程的区别 面向过程思想适合简单 不需要协作的任务 面向对象需要很多协作才能完成 面向对象就应运而生了 object 对象 instance 实例 都是解决问题的思维模式 都是代码组织的方式 解决简单问题可以使用
  • 通过文件夹文件获取文件夹大小

    思路就是便利文件夹下的每个文件 碰到子文件夹递归进去继续找文件 所有的文件大小累加起来 int GetFolderSize LPCTSTR szPath TCHAR szFileFilter 512 TCHAR szFilePath 512
  • mysql的sql语句没错但是报错,sql语句可以正常执行,但是报错:【merge sql error, dbType mysql, sql :】...

    错误信息如下 2017 09 06 19 03 41 186 ERROR method com alibaba druid filter stat StatFilter mergeSql StatFilter java 147 merge
  • 基于有道API的命令行词典(golang版)

    Godict 本项目地址 近期一直再使用golang语言开发一些工具 相关的后端技术链 golang orm postgresql gin jwt logrus 和对应前端的技术链 vue iview axios vue router 基本
  • matlab逆变器原理,MATLAB中的单相全桥逆变器电路建模与仿真

    电子技术设计和应用电子设计和应用电子技术O 3969 j issn 1000 0755 201 5 03 020 MATLAB中的单相全桥逆变器电路建模与仿真杨露容军刘凯周雷李仁贵 湖南工学院信息与通信工程学院 湖南岳阳 描述了全桥逆变器电
  • 什么是MapReduce,MapReduce的工作流程和原理是什么

    一 MapReduce的概念 MapReduce是一种编程模型 用于大规模数据集 大于1TB 的并行运算 概念 Map 映射 和 Reduce 归约 和它们的主要思想 都是从函数式编程语言里借来的 还有从矢量编程语言里借来的特性 它极大地方
  • 对拦截器的小小理解

    对于初学架构的 color red 小白 color 来讲 拦截器绝对是一把需要掌握的 color red 利器 color 那么自己从以下几个方面 谈谈对拦截器的小小思考 拦截器的方法在Action执行前或执行后自动执行 从而将通用的操作
  • 吐血解决磁盘占用率100%

    吐血解决磁盘占用率100 问题简述 解决步骤 吐血解决 磁盘利用率高的建议 问题简述 一次偶然使用电脑后 发现每次开机后 磁盘长时间占用率达到100 带来的影响是打开浏览器 打开本地电脑磁盘特别卡 解决步骤 1 尝试了网络上提供的绝大部分方
  • 常用的范数求导

    矢量范数的偏导数 L1范数不可微 但是存在次梯度 即是次微分的 L1范数的次梯度如下 x x 1 sign x begin equation begin aligned frac partial partial mathbf x mathb
  • 【CV with Pytorch】第 8 章 :图像超分辨率

    随着高分辨率图像捕获代理的出现 图像中捕获的信息是巨大的 技术已经从超高清转向 4K 和 8K 分辨率 如今 电影正在使用高分辨率帧 但是 在某些情况下 他们需要将低分辨率图像增强为高分辨率图像 想象这样一个场景 电影的主角正试图确定从一张
  • 第一站:探索JavaWeb的神秘世界

    欢迎来到 JavaWeb的奇妙冒险 教学系列 在这里 我们将探索Web开发的奥秘 让你在学习的过程中不仅轻松愉快 还能掌握高质量的知识 JavaWeb的奇妙冒险 第一站 探索JavaWeb的神秘世界 1 什么是JavaWeb 2 为什么学习
  • 2022-03-03JAVA面试笔试题记录

    最近在学习JAVA技术基础 也尝试练习一些JAVA面试中的编程题来巩固相关的知识点 具体的问题和代码如下 问题1 package com interview demo 利用条件运算符的嵌套来完成此题 学习成绩 gt 90分的同学用A表示 6
  • 决策树(Decision Tree,DT)(ID3、C4.5、剪枝、CART)

    目录 1 算法简介 2 特征选择 3 生成决策树 ID3 C4 5 4 修剪决策树 5 CART算法 CART回归树的生成 CART分类树的生成 CART剪枝 1 算法简介 决策树模型是树形结构 既可以用于分类 也可以用于回归 一颗决策树由
  • Mysql数据库基础(四)—— 表的字段类型(Mysql数据类型)

    Mysql的数据类型是一种约束 为了确保数据插入和存储的一致性 一旦我们插入的数据不合法 比如插入与字段类型不符的数据 Mysql会直接终止 这一点上和C语言就有区别 C语言存在隐式类型转换 即便类型不一致 编译器也不会报错 除此之外 虽然
  • 语义分割模型LinkNet介绍

    语义分割模型LinkNet 模型提出的背景 网络结构 实验结果 结论 GitHub代码链接 LinkNet是2017年CVPR上的一篇论文 论文地址 https arxiv org abs 1707 03718 由于网上的论文笔记以及讲解不
  • 推荐收藏

    本文将对数据竞赛的 技巧 进行全面的总结 同时还会分享下个人对比赛方法论的思考 前者比较客观 总结了不同数据类型下涉及到的比赛技巧 后者稍微主观 是我个人对解决比赛思路的总结 2019年下半年对我触动很大的两个知识分享是 志峰现场讲解的 T
  • VLAN是什么,我们为什么需要它?

    VLAN是一组逻辑上的设备和用户 这些设备和用户并不受物理位置的限制 可以根据功能 部门及应用等因素将它们组织起来 相互之间的通信 任何典型的LAN环境都包括各种各样的设备和计算机系统 它们都有各自的用途 有些设备应用是特有的 语音 数据
  • ABAP 新语法记录(一)

    主要内容 内联声明 构造表达式 内表操作 Open SQL 其他 本文列出了ABAP新语法的一些使用方式 供大家学习参考 内联声明 代码实现 pre amp 主题一 内联声明 语法 DATA FILED SYMBOL 1 定义变量 2 定义