无题
2、两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。
1234567891011121314输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.输入:l1 = [0], l2 = [0]输出:[0]输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9]输出:[8,9,9,9,0,0,0,1]提示:每个链表中的节点数在范围 [1, 100] 内0 <= Node.val <= 9题目数据保证列表表示的数字不含前导零
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051// 别人的Go解法// 方法中的形参和返回值参数都写的很精简,返回值带参,可直接给返回值赋值fun ...
无题
HashMap源码解读1、开篇先喷HashMap,请看下面代码12345678910111213141516171819202122// 这是HashMap的定义public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable { ... }// 我们来看看 AbstractMappublic abstract class AbstractMap<K,V> implements Map<K,V> { ...}// 综上我们所看到的 AbstractMap 已经实现了Map接口,但是HashMap在定义的时候又继承了一次,// 这里其实是多余的(个人猜测是为了更直观的看到HashMap的继承结构,但这边会影响效率!!!)// 为什么会影响效率?// 如果我们代码做了一些无意义的继承、实现会影响哪个阶段的效率。JVM中java文件被编译成 ...
2022-5-16 实习Day37
2022-5-16 实习Day371、黑名单校验未命中问题排查,项目黑名单url失效 –3小时 100%2、协助测试,测试问题帮助解答–3小时 100%
Golang编程学习(part 32)1、接口编程的最佳实践123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105// 实现对Hero结构体切片的排序: sort.Sort(data Interface)package mainimport ( "fmt" "math/rand" "sort")// 1、声明Hero结构体type Hero struct { Name stri ...
无题
2022-5-17 实习Day381、汇入汇款黑名单前台弹框无法关闭问题 – 3小时 80%
2、汇入汇款前端不返显问题排查 –2小时 100%
3、gpi299报文发送未接收排查 –2小时 80%
Golang编程学习(part 33)1、面向对象编程 — 多态① 基本介绍:变量(实例)具有多种形态。面向对象的第三大特征,在Go语言,多态特征是通过接口实现的。可以按照统一的接口来调用不同的实现。这时接口变量就呈现不同的形态② 接口体现多态的两种形式1)多态参数:在前面的Usb接口案例,usb Usb,既可以接收手机变量,又可以接收相机变量,就体现了Usb接口的多态特点
2)多态数组:演示一个案例,给Usb数组中存放Phone结构体和Camera结构体变量
12345678910111213141516171819202122232425262728package mainimport "fmt"type Usb interface { charge()}type Phone struct { b ...
无题
2022-5-13 实习Day351、行内汇款——申报交易完成在监管报送平台查询不到问题排查。 –3小时 20%2、汇入汇款不申报,有境外申报单问题排查 –2小时 80%3、代理行业务测试 –2小时 30%
Golang编程学习(part 30)1、面向对象编程思想—抽象的介绍我们在前面去定义一个结构体的时候,实际上就是把一类事物的共有属性(字段)和行为(方法)提取出来,形成一个物理模型(结构体),这种研究问题的方法称为抽象2、面向对象编程三大特性—封装封装(encapsulation)就是把抽象出的字段和对字段的操作封装在一起,数据被保护在内部,程序的其他包只有通过被授权的操作(方法),才能对字段进行操作【封装的好处:1)隐藏实现细节。2)可以对数据进行验证,保证安全合理】① 封装的实现步骤1)将结构体、字段(属性)的首字母小写【不能导出了,其他包不能使用,类似private】
2)给结构体所在包提供一个工厂模式的函数,首字母大写,类似一个构造函数
3)提供一个首字母大写的Set方法(类似其他语言的public),用于对属性判断并赋值
1234func (var ...
无题
2022-5-14 实习Day361、行内汇款——申报交易完成在监管报送平台查询不到问题排查。 –3小时 30%2、代理行业务测试 –2小时 50%3、代理行业务测试102报文前端校验不通过 –2小时 30%
Golang编程学习(part 31)1、面向对象编程 — 多重继承如果一个struct嵌套了多个匿名结构体,那么该结构体可以直接访问嵌套的匿名结构体的字段和方法,从而实现了多重继承123456789101112type Goods struct { Name string Price float64}type Brand struct { Name string Address string}type TV struct { Goods Brand}
1)如果嵌入的匿名结构体有相同的字段名或者方法名,则在访问时需要通过匿名结构体类型名来区分
2)为了保证代码的简洁性,建议大家尽量不使用多重继承
2、接口(interface)基本介绍:按顺序,我们应该讲 ...
2022-5-11 实习Day33
2022-5-11 实习Day331、测试环境基础配置数据导出 – 1小时 100%2、202报文发起汇入汇款交易解付完成未发出gpi299报文排查 –2小时 50%3、核心记账失败,机构内部账类型在测试环境中没有找到。–2小时 100%
Golang编程学习(part 28)1、方法的声明(和函数是两回事)比如Person结构体除了有一些字段外(年龄、姓名、…),Person结构体还有一些行为,比如:可以说话、跑步…,这就要用方法才能完成。Golang中的方法是作用在指定的数据类型上的(即:和指定的数据类型绑定),因此自定义类型都可以有方法,而不仅仅是struct123456789101112type A struct { Num int}func (a A) test() { fmt.Println(a.Num)}func main() { var a = A{10} a.test()}
对上面的语法的说明:1)func (a A) test() { ...
无题
2022-5-12 实习Day341、冒烟测试-贸金系统-退汇业务申报问题,提交时无需申报 –2小时 100%2、汇出汇款,收款人信息非强制必输,申报信息校验要求必输入。排查后收款人信息需要输入完全–2小时 100%3、bugfix中费用管理交易账务信息扣费币种下拉为空已恢复。–2小时 100%
Golang编程学习(part 29)1、工厂模式Golang的结构体没有构造函数,通常可以使用工厂模式来解决这个问题1234package modeltype Student struct { Name string}
看上面的代码,这里的Student的首字母S是大写的,如果我们想在其他包创建Student实例(比如main包),引入model包后,就可以直接创建Student结构体变量。但是问题来了,如果首字母是小写的,比如是 type student struct{…}就不行了,怎么办——>工厂模式来解决2、工厂模式来解决问题① 使用工厂模式实现跨包创建结构体实例(变量)的案例:如果model包的结构体变量首字母大写,引入后直接使用, ...
无题
2022-5-9 实习Day311、行内汇款核心记账失败问题排查,数据库账号未加概述 –2小时 100%2、行内汇款任务结束,自动发起汇入汇款部分信息未显示,前置任务为填写。–2小时 100%3、工作流报错,测试等待复测。–2小时 90%
Golang编程学习(part 26)1、struct类型的内存分配机制12345678910111213141516171819202122232425var p1 Personp1.Age = 10p1.Name = "小明"var p2 Person = p1p2.Name = "小张"fmt.Println(p1)fmt.Println(p2){小明 10}{小张 10}画内存图: ________ | 小明 | p1————>|_______| | 10 | |_______| ________ ...
无题
2022-5-10 实习Day321、汇款业务—退汇业务单元测试报告完成 – 3小时 100%2、测试问题-费用列表,新增,下拉框为空值。此为手工配置 –2小时 100%3、核心记账失败,未去总行选取币种等信息导致错误。–2小时 90%
Golang编程学习(part 27)1、结构体在内存中的布局① 结构体大小:结构体是占用一块连续的内存,一个结构体变量的大小是由结构体中的字段决定的12345678type Foo struct { A int8 B int8 C int8}var f Foofmt.Println(unsafe.Sizeof(f)) //3
② 内存对齐:但是结构体的的大小又不完全由结构体的字段决定12345678type Bar struct { x int32 // 4 y *Foo // 8 z bool // 1}var b1 Barfmt.Println(unsafe.Sizeof(b1)) // 24
有的同学可能会认为 ...