第二步是生成10个随机字母,我们索性将这些在这一步将坐标放到数组变量里,以便准备给下落动作使用。
问题是,随机的字母如何产生?我们从未讲过数据类型,我认为一上来就介绍8中基本数据类型毫无意义,如果没有用到就会很快的忘记,回顾一下我们已经使用的数据类型都有什么。毫无疑问,第一个想到的就是int,整数类型(简称整型),这是目前为止我们使用最多的数据类型,既然有整型那么就一定有小数型,在很多语言里都有两张表达小护士的数据类型,一个float,另一个是double。看到单词我们就能知道个大概,double是两个的意思,这是由计算机的特点决定的,double用的两倍的空间来存储数据,所以可以想象的到double可以表示更多的数字,具体到小数来看,结果就是更加的精确,但是也就更加的浪费资源。事实上,整型也有short和long之分,这个也很好理解,从字面上去解释,short就是短的意思,对应的就是短整型,long是长的意思,对应的就是长整型,两者的区别就是表示的整型数据的长度不同,short int所表示的数据范围是 —32768to+32767。long int 表示的是-2,147,483,648 to 2,147,483,647 这样一来就很直观了嘛,long所表示的范围比short大的多得多
言归正传,另外,我们还用到了boolean类型,你说我没讲到boolean,其实我们在if或者循环里用做条件的表达式结果,boolean简单,里面就两个可能的值:true or false。
还有一个是byte类型,因为计算机是用0和1最为基本的运算单位的,但是表达的东西太少了,所以人们将0和1组成一个组来存放稍大一点的数,8个二进制数组合起来就是一个byte,这成为编程中最常用的基本数值单位。
介绍到我们关注的一个数据类型,即char。char是字符类型,就是放字符的,字符用单引号引起来,比如'a',这个我们没有用过,之前用双引号"*"不算,因为这是字符串String,这个String不放在数据类型里讨论。String是对象不是基本数据类型,这句话意味着这里讨论的数据类型不是对象,你可能觉得不是就不是呗,可是从学术的角度或者一直面向对象的程序员看来,就难以适应了,有人抨击Java不是纯粹的面向对象语言,指的就是8中基本数据类型不是对象,从程序员的角度来看,不是对象意味着点点不会出现方法。有的时候这是个问题,为什么Java的设计者不能再纯粹一点呢?这是有原因的,设计者们看的很深很远,从效率的角度考虑,基本数据类型的操作比对象更有效率,不过为了照顾面向对象程序员,Java提供了基本数据类型的封装类,帮助我们在需要的时候将这个数变成对象。
为什么要搞这么多的数据类型呢?一是为了更好的使用内存,声明变量的时候如果指定了这个变量是boolean类型的,程序就不用为这个变量准备int类型那么大的空间了;而是不同数据类型之间的运算规则又是不同的,我们来看下面两个程序的运算结果。