黑马程序员_JAVA简单语句的书写格式以及注意要点

---------------------------   android培训java培训、期待与您交流---------------------------

1  对于整数:java有三种表现形式 

二进制:0-1,满2进1.负数的二进制等于其正数的二进制取反再+1。
八进制:0-7 ,满8进1. 用0开头表示 
十进制:0-9 ,满10进1。
十六进制:0-9,A-F,满16进1. 用0x开头表示。
    

2  数据类型

 

注意:中文也是2个字节,能装到char内。

3  类型转换问题 

类型转换只能自动提升,不能自动降低,需要降低的时候,只能强制转换。例子:

sop('a'+1)//打印结果为98。为自动提升。

sop((char)('a'+1))//打印结果为b。为强制转换。

sop("a"+1)/打印结果为a1。字符串数据和任何数据使用+都是相连接,最终都会变成字符串。

 

4  转义字符 

 \n:换行。
  \b:退格。相当于backspace。
  \r:按下回车键。
window系统,回车符是由两个字符来表示\r\n.(作为后面IO流readLine()的结束标志)
  \t:制表符。相当于tab键。

注意:当\与后面作为一个整体的时候写1个。如果不是写2个,例如你要输出1个\。就得写sop("\\")。 

5  运算符

 赋值运算符:不会提升数据类型。仅仅把左右两边的和给左边。  例子:

short s=4 ;    int i =5;    sop( s+=i ) ;//这个语句是正确的,s还是short  没有被提升为int。

逻辑运算符

&&:当左边为false时,右边不运算。

||:当左边为true。右边不运算。

^ : 异或;只要两边的boolean表达式结果,相同就为false。

位移运算符:

<<和>>的应用:取出一个数的二进制后N位的整数:以N=8为例:

int n1 = num & 255;//为2的N次方-1;
  //要获取下一组N位,将sum右移N位。
为了防止负数无限右移,让最高为补零,所以用>>>。
  int temp = num >>>8;

  //对temp的值进行最低四位的获取。
  int n2 = temp & 255;

 

6  程序控制

判断结构:if语句

if(条件表达式){执行语句}如果有else就表示一定会有会被执行的语句。如果就一个if语句,则后面的{}可以不写。

if else结果 简写格式: 变量 = (条件表达式)?表达式1 :表达式2。   注意:运算完必须要有1个结果才能简写。

条件表达式无论写成什么样子,只看最终的结构是否是true 或者false。    

选择结构:switch语句

语句选择的类型只有四种:byte,short,int ,char。

b,case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。

c,结束switch语句的两种情况:遇到break,执行到switch语句结束。

d,如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。

  例子:

int x = 3;
  switch(x)//byte short int char
  {
   default:
    System.out.println("d");
     case 4:
    System.out.println("a");
   case 6:
    System.out.println("b");
    break;
   case 2:
    System.out.println("c");
    break; 
  }      打印结果:dab

if和switch语句特点:  

        如果判断的具体数值不多,而且符合byte short int char这四种类型。建议使用swtich语句。因为效率稍高。
如果结果为boolean类型判断,使用if。

循环结构:while语句和for语句

while和do while的区别:

while先判断如果为T则执行,为F则不执行。

do while现执行后判断,即条件无论是否满足,  循环体至少被执行一次。

 for语句格式:
 for(初始化表达式;循环条件表达式;循环后的操作表达式)
 {        1                           2       5      8                    4         7
    执行语句;

      3     6
 }
 注:

a,for语句表达式运行的顺序,初始化表达式只读一次,然后判断循环条件, 为T就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,  重复这个过程,直到条件不满足为止。(其中的数字为for语句的执行顺序

b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是  在内存中释放。而while循环使用的变量在循环结束后还可以继续使用

c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循 环多少次,而是根据某些条件,来控制循环。

d.循环条件表达式无论写成什么样子,只看最终的结构是否是true 或者false。(比如写个输出语句就不行)    

 

循环结构经常和累加思想相结合

        原理:通过变量记录住每次变化的结果。通过循环的形式。进行累加动作。

其他流程控制语句

break语句:应用范围:选择结构和循环结构。用于跳出该选择结构和循环结构。

contion语句:应用于循环结构。用于结束本次循环继续下次循环。这个两个语句单独存在下面都不可以有语句,因为执行不到。

标号:让这两个语句作用于指定的范围。例子:

w:for(int x=0; x<3; x++)
  {
  q: for(int y=0; y<4; y++)
   {
    System.out.println("x="+x);
    break w;

     //continue w;
   }    
  }

其中红色部分为标号,如果不写,默认跳出(结束)内循环。如果标识,则跳出(结束)指定循环。

7  函数

函数的格式:

函数就是用于封装方法。

修饰符返回值类型函数名(参数类型形式参数1,参数类型形式参数2,)
        {
                    执行语句;
                    return 返回值;
        } 
return:用于结束函数(当函数的返回值类型是void时,函数中的return语句可以省略不写,但不能在输出语句中输出)。

函数中只能调用函数,不可以在函数内部定义函数。

重载的概念:

同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可。  注意与返回值类型无关,只看参数列表。

小练习:

void show(int a,char b,double c){}下面哪个函数和本函数重载了

a.void show(int x,char y,double z){}//没有,因为和原函数一样。

b.int show(int a,double c,char b){}//重载,因为参数类型不同。注意:重载和返回值类型没关系。
c.void show(int a,double c,char b){}//重载,因为参数类型不同。注意:重载和返回值类型没关系。

d.boolean show(int c,char b){}//重载了,因为参数个数不同。

e.void show(double c){}//重载了,因为参数个数不同。

f.double show(int x,char y,double z){}//没有,这个函数不可以和给定函数同时存在与一个类中。

8  数组  

数组的定义:

 同一种类型数据的集合。其实数组就是一个容器。

 元素类型[] 数组名 = new 元素类型[元素个数或数组长度];
 示例:int[] arr = new int[5]; (arr在栈,arr[0]~arr[5]在堆中,初始化值为0)

 元素类型[] 数组名 = new 元素类型[]{元素,元素,……};
 int[] arr = new int[]{3,5,1,7};
 int[] arr = {3,5,1,7};

内存的结构:

用于存储局部变量,当数据使用完,所占空间会自动释放。

数组和对象,通过new建立的实例都存放在堆内存中,每一个实体都有内存地址值,实体中的变量都有默认初始化值,实体不在被使用,会在不确定的时间内被垃圾回收器回收。

例子:

int a = 5;    int b =a;  b =8 ;         这样a还是5 ,b =8。

int[] a ={5};int[] b =a; b[0]=8; 这样a[0]=8,b[0]=8。 

常见异常:

ArrayIndexOutOfBoundsException:   操作数组时,访问到了数组中不存在的角标。

NullPointerException:空指针异常:当引用没有任何指向值为null的情况,该引用还在用于操作实体。

练习:

 

---------------------------   android培训java培训、期待与您交流!---------------------------

详细请查看:http://edu.csdn.net/heima/ 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值