微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验.求职心得和成长感悟,以及作为程序员的思考和见解.(关注公众号后回复”资料“即可领取 3T 免费技术学习资源) ​ 作为一个非科班小白,我在读研期间基本是自学Java,从一开始几乎零基础,只有一点点数据结构和Java方面的基础,到最终获得网易游戏的Java实习offer,我大概用了半年左右的时间.本文…
作为一个非科班小白,我在读研期间基本是自学Java,从一开始几乎零基础,只有一点点数据结构和Java方面的基础,到最终获得网易游戏的Java实习offer,我大概用了半年左右的时间.本文将会讲到我在这半年里做对了哪些事情. 前言 研究生时期的方向选择 对于即将读研的同学来说,一般有两件事很重要,一件事是选择导师,一件事是选择方向. 我就读于华中科技大学,主修软件工程专业,我在刚读研的时候最头疼的也是这两件事情.首先说明一下,我读的是专硕,所以实验室一般不搞科研,有部分导师会带项目,由于我不打算在…
编程语言Java,已经21岁了.从1995年诞生以来,就一直活跃于企业中,名企应用天猫,百度,知乎......都是Java语言编写,就连现在使用广泛的XMind也是Java编写的.Java应用的广泛已经到了“无处不用”的盛世,而且一直在语言排行榜榜首,从未被超越.废话不多说,今天主要是给大家讲讲怎样学习Java,给大家建议一条轻松精通Java的学习路线.有了相对标准的流程,那么你的学习效率一定会倍增. 下面对java学习进行一次史无前例的剖析,细致的讲解零基础的人怎么学习Java.先看下Java…
原文:Android零基础入门第2节:Android 系统架构和应用组件那些事 继上一期浅谈了Android的前世今生,这一期一起来大致回顾一下Android 系统架构和应用组件. 一.Android 系统架构 Android系统的底层建立在Linux系统之上,该平台由操作系统.中间件.用户界面和应用软件4层组成,它采用一种被称为软件叠层(Software Stack)的方式进行构建.这种软件叠层结构使得层与层之间相互分离,明确各层的分工.这种分工保证了层与层之间的低耦合,当下层的层内或层下发生…
开发环境搭建好之后,还需要一个集成开发环境也就是IDE来进行编程.这里推荐的IDE是IDEA,那个老掉牙的Eclipse还是先放一边吧,(手动滑稽). IDEA的下载地址:http://www.jetbrains.com/idea/ 下载的时候,可以选ultimate版,也可以选community版,建议选择ultimate版,下载好以后安装,激活码地址:http://idea.lanyus.com/ 使用前请将"0.0.0.0 account.jetbrains.com"添加到hos…
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rectangle. 然后右键src文件夹,新建一个package,命名为pers.frank.rectangle. 这里补充说明一下包的命名规则,相信很多人都知道,包命名的时候用去www域名反写,加上项目名称,但实际上,那一般是用于公司项目的命名方式,对于不同项目,有着不同的命名规则. indi :个体…
字符串,是我们最常用的类型,每个用双引号来表示的串都是一个字符串.Java中的字符串是一个预定义的类,跟C++ 一样叫String,而不是Char数组.至于什么叫做类,暂时不做过多介绍,在之后的篇章中会有关于类的详细介绍,在这里,只需要将类理解为一个模具,就像做月饼那样,想要什么外观的月饼,就选用相应的模具一压,再往烤箱里一放,便能得到我们想要的月饼.用同一个模具所做出来的月饼基本是一样的.当然,这个比喻并不十分恰当,不过就目前而已,它是有效的.声明一个String类型的变量之后,这个变量便是S…
什么是控制流程?简单来说就是控制程序运行逻辑的,因为程序一般而言不会直接一步运行到底,而是需要加上一些判断,一些循环等等.举个栗子,就好比你准备出门买个苹果,把这个过程当成程序的话,可能需要先判断一下外面是否下雨,下雨的话就得带伞,否则就直接出门,同时,外面可能有很多家水果店,那去哪家买呢?这里把价格放在第一要素,所以你会一家一家跑,直到找到最便宜的那家为止. 其实,上述买苹果的过程,已经用了两种最常用的控制流程:条件和循环.画个流程图就像这样: 通过这个图,大家应该能很清楚的了解整个决策过程.…
什么是大数值?用脚趾头想也知道,当然是"大"的数值(233).Java中有两个用于表示大数值的类,BigInteger和BigDecimal,那到底能表示多大的数值呢?理论上,可以表示任意长度,任意精度,想要多大,就能有多大. 为什么要用大数值?理由很简单,当整数跟浮点数的精度不能满足要求时,就需要用更大或者精度更高的类型,这时候大数值就应运而生了. short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1). int的取值范围为(-2147483…
什么是数组?顾名思义,就是数据的组合,把一些相同类型的数放到一组里去. 那为什么要用数组呢?比如需要统计全班同学的成绩的时候,如果给班上50个同学的成绩信息都命名一个变量进行存储,显然不方便,而且在做成绩统计,如求总分,平均分,方差等的时候,遍历成绩信息又成了一大难题,这个时候,你就需要用到数组了. 数组可以很好的解决这两个问题,数组名只有一个,只需要使用数组名加下标来访问各个元素的信息即可,遍历的时候,由于下标是连续的,所以访问起来十分方便. 接下来,就开始正式介绍一下数组吧. 数组是用于存储…