黑马程序员--------------JAVA基础(二)

来源:互联网 发布:hadoop与云计算 编辑:程序博客网 时间:2024/06/05 14:33
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------



一,JAVA中的基本语句

     1,判断语句,if.

         if语句有三种表现形式:a:if(true){执行的语句}b:if(条件表达式){执行语句}else{执行语句};  c:if(条件表达式){执行语句}else if{执行语句}....else{执行语句};ifelse if里面的条件表达式都可以理解为是判断的条件,当满足某一条件时,就执行其对应的执行语句。三种表现形式的最大区别是判断的条件个数不同(第一种只能判断一种条件,第二种可以判断两个条件,当不满足第一个条件时就执行else下面的语句,而第三种可以判断多个条件)。

     2,选择语句,switch.

   switch(变量){

   case :要执行的语句;break;

   …

   default:要执行的语句;

  }原理:用小括号中的变量的值依次和case后面的值进行对比,如果和case后面的值相同了就执行case后面的语句,如果没有相同的则执行default后面的语句(千万要记住一点,当case下面的执行语句后面没有加break时,就算程序满足了某一个case后,它还会执行后面case所要执行的语句,直到执行完default后,程序才算执行完。);

例如:int x=7;
             
switch(x)
              {
              case7:
                     System.out.println("a");
              case5:
                     System.out.println("b");
              case6:
                     System.out.println("c");
                     default:
                            System.out.println("d");
              }

 这个代码执行的结果为:a b c d ;但是如果在执行语句后加了break,结果就为a.

 switch 后面的小括号中的变量只能是byte,char,short,int四种类型中的一种;

3,循环语句

    whiledo while

   while的格式:while(条件表达式){执行语句}

   do while的格式:do{执行语句}while(条件表达式);

   只要记住它两的区别:while是先判断条件,满足就执行下面的语句,而do while则是先执行语句再进行判断(无论条件是否满足,至少都会执行一次{}中的语句)

  for循环语句格式

   for(初始化表达式(1);循环条件表达式(2);循环后的表达式(3){

  执行语句(4;}    

 执行顺序是:(1---->2---->4---->3---->2---->4---->3....

  whilefor语句可以进行互换。但有一点区别是:for循环执行完毕变量会自动释放,而while中的变量则还存在于栈内存中。

  在循环中要用到两种控制循环的语句。continue,breakcontinue只作用于循环结构,它只是结束本次循环,继续下次循环。break用于跳出循环,也就是循环在执行到break时,就会结束。它们俩后面不可以定义其它语句,因为会执行不到。

 如要打印出1100之前的奇数,用continue比较方便。

for(int x=0;x<=100;x++)

{

   if(x%2==0)

      continue;

System.out.println(x);

}

 嵌套循环:也就是循环里面还有循环。如打印出乘法口诀表。

for(int x=0;x<=9;x++)
             
{
                     for(inty=1;y<=x;y++)
                     {
                            System.out.print(y+"*"+x+"="+x*y+"\t");
                     }
                     //每输完一行就换行一次。
                    
System.out.println();
              }

二,数组

   数组的定义:是用于存储同一种类型数据的容器。

   数组的好处:可以对存入该容器中的数据时行编号,因为每个数据有对应的角标,从0开始。

   定义数组的格式:元素类型[]变量名= new元素类型[元素的个数];元素类型[]变量名 = {元素1,元素2...}

   因为我们可以通过角标来操作数组中的元素,所以有多种操作。如对元素进行排序,查找等。

 
//
折半查找
public class HalfSearchDemo {
      

       publicstatic void main(String[] args) {
              //TODO Auto-generated method stub
              int[]arr={3,6,12,34,56,89,98};
              intx=getIndex_3(arr,8);
              System.out.println(x);


       }
       publicstatic int getIndex(int[] arr,int key)
       {
              intmin,max,mid;
              min=0;
              max=arr.length-1;
              mid=(min+max)/2;
              while(key!=arr[mid])
              {
                     if(arr[key]>arr[mid])
                            min=mid+1;
                     elseif(arr[key]<arr[mid])
                            max=mid-1;
                    
                     mid=(min+max)/2;
                    
              }
              returnmid;
             
       }

  } 

将数组中的元素进行反转

public static void arrRverse(int[] arr)
{
for(int start=0,end=arr.length-1;start<end;start++,end--)
{
int tmep=arr[start];
arr[start]=arr[end];
arr[end]=tmep;
}



---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
0 0
原创粉丝点击