腾讯CSIG暑期实习
腾讯CSIG暑期实习一面 (60min)3.311. 是否了解Go语言?Go 语言的特点 并发模型: Go 使用 goroutine 和 channel 来实现并发,goroutine 是轻量级的线程,启动和切换的开销非常小。 与 Java 的线程模型相比,Go 的并发更加轻量和高效。 简洁的语法: Go 的语法设计非常简洁,去掉了许多复杂的特性(如继承、泛型等),降低了学习曲线。 与 Java 的冗长语法相比,Go 更加直观和易读。 内存管理: Go 内置了垃圾回收机制(GC),开发者无需手动管理内存。 与 Java 的 GC 类似,但 Go 的 GC 优化更适合短时任务和高并发场景。 标准库: Go 提供了丰富的标准库,包括 HTTP、JSON、数据库连接等,开箱即用。 与 Java 的生态系统相比,Go 的标准库更轻量化,但功能足够强大。 编译速度快: Go 的编译速度非常快,适合快速开发和迭代。 与 Java 的编译速度相比,Go 更加高效。 跨平台支持: Go 支持多种操作系统和架构,可以轻松编译为不同平台的可执行文件。 与 Java...
集合框架
集合框架1. Collection JDK不提供此接口的任何直接实现,而是提供更具体的子接口(如:Set和List)去实现。 Collection 接口是 List和Set接口的父接口,该接口里定义的方法既可用于操作 Set 集合,也可用于操作 List 集合。 常用方法 int size():获取当前集合中实际存储的元素个数 boolean isEmpty():判断当前集合是否为空集合 boolean equals(Object obj):判断当前集合与obj是否相等。 Object[] toArray():返回包含当前集合中所有元素的数组 int hashCode():获取集合对象的哈希值 Iterator iterator():返回迭代器对象,用于集合遍历 boolean retainAll(Collection coll):对原集合取交集并判断是否存在交集部分 增、删、改、查: 增加 boolean add(E obj):添加元素对象到当前集合中 boolean addAll(Collection...
系统相关类
系统相关类1. System System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。 由于该类的构造器是private的,所以无法创建该类的对象。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。 成员变量 Scanner scan = new Scanner(System.in); System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示器)。 常用方法 native long currentTimeMillis():该方法的作用是返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒所差的毫秒数。 void exit(int status):该方法的作用是退出程序。其中status的值为0代表正常退出,非零代表异常退出。使用该方法可以在图形界面编程中实现程序的退出功能等。 void...
数学相关类
数学相关类1. BigDecimal 一般的Float类和Double类可以用来做科学计算或工程计算,但在商业计算中,要求数字精度比较高,故用到java.math.BigDecimal类。 BigDecimal类支持不可变的、任意精度的有符号十进制定点数。 构造器 BigDecimal(double val) BigDecimal(String val) :推荐使用。 常用方法 BigDecimal add(BigDecimal augend):加 BigDecimal subtract(BigDecimal subtrahend):减 BigDecimal multiply(BigDecimal multiplicand):乘 BigDecimal divide(BigDecimal divisor, int scale, int roundingMode):除 divisor是除数 scale指明保留几位小数 roundingMode指明舍入模式 (ROUND_UP :向上加1、ROUND_DOWN...
字符串
字符串1. String构造器 public String() :初始化新创建的 String对象,以使其表示空字符序列。 String(String original): 初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。 public String(char[] value) :通过指定的字符数组来构造新的String。 public String(char[] value,int offset, int count) :通过字符数组的一部分来构造新的String。 public String(byte[] bytes) :通过使用平台的默认字符集解码指定的字节数组来构造新的String。 public String(byte[] bytes,String charsetName) :通过使用指定的字符集解码指定的字节数组来构造新的String。 String与其他结构间的转换字符串 —-> 基本数据类型、包装类 : 包装类的public static xxx...
日期时间类
日期时间类1. Calendar Date类的API大部分被废弃了,替换为Calendar(日历)。 Calendar 类是一个抽象类,主用用于完成日期字段之间相互操作的功能。 实例化 使用Calendar.getInstance()方法 调用它的子类GregorianCalendar(公历)的构造器。 常用方法 public int get(int field):返回给定日历字段的值 public void set(int field,int value) :将给定的日历字段设置为指定的值 public void add(int field,int amount):根据日历的规则,为给定的日历字段添加或者减去指定的时间量 public final Date getTime():将Calendar转成Date对象 public final void setTime(Date...
IntelliJ IDEA 快捷键
IntelliJ IDEA 快捷键 1. Ctrl + * 快捷键 说明 Ctrl + P 方法的形参列表提醒-parameter info Ctrl + J 提示代码模板-insert live template Ctrl + D 复制指定行的代码-duplicate line or selection Ctrl + Y 删除指定行的代码-delete line Ctrl + O 重写父类的方法-override methods … Ctrl + I 实现接口的方法-implements methods … Ctrl + N 如何查看源码-go to class… Ctrl + F12 显示当前类结构,支持搜索指定的方法、属性等-file structure Ctrl + H 光标选中指定的类,查看继承树结构-Type Hierarchy Ctrl + F 查找指定的结构 Ctrl + R 查找与替换-replace Ctrl + Q 查看方法文档-quick documentation Ctrl +...