您的位置:首页 > 职场人生

黑马程序员Java培训、Android培训-Java 学习过程记录_语言基础3

2011-03-19 00:51 986 查看
知识点补充2:如何理解函数返回值类型为void的情况Void表示不需要返回结果,返回结果为空帮助文档的意思是:void方法虽然不返回任何东西,但这是你决定的,void方法不是生来就是这样,只要改变它的返回类型,你就可以让它返回别的什么,int,String,等等知识点补充3:函数调用的过程分析当主函数中执行到一条语句,是将一函数赋值给一变量,例如:m=area(x,y),则程序会将x,y这俩个实参值传递到area程序的定义语句中,执行area定义语句,当遇到return语句后程序返回到主函数,并将函数area返回值带给变量m。知识点补充4:算术运算符的应用技巧思考题1:某个培训中心要为新到的学员安排房间,假设共有x个学员,每个房间可以住6人,让你用一个公式来计算他们要住的房间数?答案:(x+5)/6。这种算法还可用在查看留言板的分页显示上: 其中x是总共的留言数,6是每页显示的留言数,结果就是总共有多少页。思考题2:假设你要让x的值在0至9之间循环变化,请写出相应的程序代码。答案:int x=0;while(true){x = (x+1)%10;}总结,灵活巧妙的运用运算符可以简化代码格式;知识点补充5:“>>”和“>>>” 区别的实例分析“>>”带符号右移就是将被移数转为2进制,向右移出1位,然后在前面补0或1“>>>”无符号右移,最前面始终补0例如:0x80000000>>1 = c00000000x80000000>>>1 = 400000000xc000000000=1100,0000, 0000, 0000, 0000, 0000, 0000, 0000 0x4000000000 =0100,0000, 0000, 0000, 0000, 0000, 0000, 0000知识点补充6:移位运算的注意事项及小技巧6.1移位运算符适用类型有byte、short、char、int、long6.2对低于int型的操作数将先自动转换为int型再移位。 6.3对于int型整数移位a>>b,系统先将b对32取模,得到的结果才是真正移位的位数。例如:a>>33和a>>1结果是一样的,a>>32的结果还是a原来的数字。6.4对于long型整数移位时a>>b ,则是先将移位位数b对64取模。6.5移位不会改变变量本身的值。如a>>1;在一行语句中单独存在,毫无意义 。6.5x>>1的结果和x/2的结果是一样的,x<<2和x*4的结果也是一样的。总之,一个数左移n位,就是等于这个数乘以2的n次方,一个数右移n位,就是等于这个数除以2的n次方。例如,用程序实现求2的x次方,就是y = x<<1;知识点补充7:如何避免多个运算符带来的问题7.1不要在一行中编写太复杂的表达式,也就是不要在一行中进行太多的运算7.2在一行中进行太多的运算并不能为你带来什么好处,相反只能带来坏处。7.3对于优先级顺序,读者不用刻意去记,有个印象就行如果你实在弄不清这些运算先后关系的话,就用括号或是分成多条语句来完成你想要的功能,因为括号的优先级是最高的,这也是软件编码规范的一个要求。知识点补充8:有时候用do-while循环语句比while循环语句方便比如调用System.in.read();读取到一个从键盘上输入字符对应的整数,遇到q结束。用do-while循环语句能减少代码(本例中就减少了try语句的执行次数)do{ try { X=system.in.read(); }catch(Exception e)() System.out.println((char)x);//就是q也打印了}While(x!=’q’)知识点补充9:Break语句和continue语句如果有标号,break语句控制会被传递给当前方法中的带有这一标号的语句。continue语句只能出现在循环语句(while,do,for)的子语句块中知识点补充10:数组 10.1数组,用于存放较多的数据,以方便引用;10.2int[] x=new int[100];//在堆中产生一个数组,将其首地址存放到栈中的x变量中;x=null与原来数组对象断开联系,堆中的数组就等着垃圾回收器回收了;10.3堆内存和栈内存,数组和对象存放在堆内存中,引用时候指向他们的代号或者名称;变量一般放在栈内存中10.4静态数组,建立后到程序运行结束都不能改变大小的数组;动态数组,在程序运行过程中,能够改变数组大小或者释放数组所占用的空间int ia[] ={1,2,3,4}; //静态数组int [] ia=new int[]{3,4,5}; //静态数组int a[5];//声明数组时,不能指定其长度,编译时将出错 10.5使用数组时要注意的问题:空指针异常,即引用变量不能为指向空;使用x.length得到数组长度10.6多维数组 10.6.1java 中并没有真正的多维数组(这点要注意理解),只有数组的数组, Java中多维数组不一定是规则矩阵形式。int[][] xx;xx=new int[3][]; xx[0]=new int[3];//数组的第一个元素存放的数组大小;xx[1]=new int[2];//数组的第二个元素存放的数组大小;10.6.2多维数组中元素的引用方式,如:x[1][2]//引用第2个数组中存放的第3个数组的值。规则矩阵数组可以在一条语句中产生,如:int xx[][]=new int[2][3]; 10.6.3多维数组的静态初始化 ,如: int[][] xx={{3,2,7},{1,5},{6}}; 10.7与数组操作相关的函数 使用System.arraycopy()函数拷贝数组 //注意区分大小写,注意先初始化数组;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: