编码方式差异
1、多返回值
java本身不支持多返回值,
正统的方式:定义返回结构(class)将多个返回值添加进去
快捷方式:参数中添加长度为1的返回类型数组,方法返回前写入额外返回值
image.png
image.png
2、参数传递函数
java中不支持方法(函数)作为参数、变量,可以包装成接口对象,进行传递(java自带的接口定义不满足时,需要自行定义接口)。
image.png
建议接口中,只定义一个方法,保证可以使用lambda表达式书写匿名内部类实例
image.png
当直播传递方法时,可以直接写为方法引用
image.png
image.png
高效批量处理
1、if、for批量补括号
java中 if for 关键词后的括号无法省略,复制golang代码时,可以先进行正则替换 (if|for) ([^{]+) 替换为2)
如js的写法:
image.png
2、参数列表中,类型、参数名对换
先进行正则查询 (([^\n]+));再进行正则替换 ([^\s,)]+) ([^\s,)]+) 替换为 1
可以同时换一些基本类型
如js的写法:
image.png
建议编写个文本处理工具(如基于本地网页,编写js程序)
处理前:
image.png
处理后:
image.png
3、DTO、VO批量生成
golang中,同一个文件中可以编写多个结构体,java中每个文件只允许编写一个公共类。
使用我自制的chrome插件——yapi结构定义代码批量生成时,golang可以粘贴到一个文件。
image.png
java由于要分文件,采用了生成echo追加命令,手动在命令行中粘贴执行,得到多个文件。
image.png