java基础复习--数据类型、运算符、程序结构

 

Java基础——基本数据类型
 
自己的基础基本为零,为了早日参加黑马训练营的课程,哪怕是第二第三季也好,从今天开始从基础一步一个脚印开始学习Java。
今天先把从前学过的知识复习,复习的内容是java的数据类型,在此归纳一下。
Java的数据类型分为:基本数据类型和引用数据类型两大类。
 
一、基本数据类型为:
1、   数值型:*整型(byte、short、int、long)
          *浮点型(float、double)
2、   字符型(char)
3、 布尔型(boolean)
 
 二、引用数据类型分为:
1、类(class)
2、接口(interface)
3、数组  
 
主要的学习内容是各种数据类型的声明和使用、各数据类型的大小、转换等。
注意点:
1、   防止数据的溢出
2、 转义字符的使用
3、 Java内数据类型的自动转换和应自身要求而进行的强制转换。
(String)类是属于引用数据类型,且是系统类。
它可以像普通变量一样使用赋值的方式进行声明。字符串使用””号括起来,可以使用+号进行连接。
任何数据类型碰到String类型的变量或常量后都向String类型转换。
 
 
 
 
 
 
Java基础——运算符、表达式和语句
再复习运算符,表达式和语句,归纳要点
 
一、运算符和语句注意点
1、多使用括号改变运算符的优先级以达到自己的目的。
 
2、注意逻辑运算符的使用。例:短路&& 只要判定第一个遇到的条件为false则为false,而非短路&则所有条件均需判定。而短路 || 同样只判定第一个遇到的true则为true,非短路 | 则需要判定所有条件,注意在不同的场合使用。
 
4、  注意简洁表达式的使用。例:a++是先计算,后自增,++a是先自增后计算
 
5、  程序的基本结构有:顺序结构、选择结构、和循环结构。通过以下语句完成:
 
*if….else语句使用于选择结构(三目运算符 ? : 可以代替单层的if else 对变量赋值的语句)
*switch语句可以使多选一的语句简化,结合break、default语句使用。switch语句中 case 的选择值只能是字符或者常量。
*while与 do….while循环的区别,while循环前会判断条件真假 再决定是否循环,而do….while 则会先执行一次循环,再判断条件真假。
*for 循环 是在明确知道循环次数的情况下使用,使用的情况比较多。
*循环的中断 可以使用 break和continue,但并不常使用。
 
 
 
Java基础——几道复习题目
 
 
 
 
一打印出1——10000以内的水仙花数。水仙花数是 一个数其各位数的立方和等于该数本身。如:153=1的三次方+5的三次方+3的三次方。
答:Test3_1.java
 
public class Test3_1{
 public static void main(String[] args){
    int a,b,c,d,e,f,i = 0 ;
    System.out.println("您要找的水仙花数是:");
   
for(a=1;a<=10000;a++){
      b = a/10000;                //求出第5位数
      c = a/1000;                 //求出第4位数,一直到f变量求出第1位数
      d = (a%1000)/100;           
      e = (a%1000%100)/10;
      f = a%1000%100%10;
   
if(a==b*b*b+c*c*c+d*d*d+e*e*e+f*f*f){      //5位数的立方和等于自身
          System.out.print(a+"/t");
        i++;                           //记录有几个水仙花数
  }
 }
 System.out.println("/t您要找的水仙花数量是:"+i);
 }
}
 
 
 
二、给定3个数字,求出最大值并输出。
答:
Test3_2.java
 
public class Test3_3{
 public static void main(String[] arg){
    int a,b,c,d,max;
      a = 1200;
      b = 3020;
      c = 7891;
   d = a>b ? a:b;     //先取两数比较取 大者
      max = d>c ? d:c;   //与第三数比较取 大者
     System.out.println("a,b,c三个数种最大的数是:"+max);
 }
}
 
 
 
三、判断某数能否被3、5、7同时整除
答:
Tset3_3.java
 
public class Test3_3{
 public static void main(String[] args){
    int num=327;
    if(num%3==0 && num%5==0 && num%7==0){
      System.out.println(num+"这个数可以同时被3、5、7整除!");
    }else{
       System.out.println(num+"这个数不能同时被3、5、7整除!");
    }
 }
}
 
 
四、编写程序,分别用while循环、do….while循环和for循环求出100-200的累加值。
答:Test3_4.java
 
public class Test3_4{
 public static void main(String[] args){
    int a = 100,sum=0,i;
 //***用for循环求累加100到200的累加值***
    for(i=0;i<=100;i++){
     sum += a;
      a++;
      }
     System.out.println("用FOR循环求出的100-200的累加值:"+sum);
  
   //***用while循环求出100到200的累加值***
     a = 100;
     sum = 0;
     while(a<=200){
       sum+=a;
        a++;
     }
     System.out.println("用while循环求出的100-200的累加值:"+sum);
  
  
   //***用do while循环求出100到200的累加值***
      a =100;
     sum =0;
     do{
        sum += a;
            a++;
     }while(a<=200);
     System.out.println("用do while循环求出的100-200的累加值:"+sum);
   }
}
 
 
 
 
五、编写程序,求出13-23+33-43....973-983+993-1003的值。
答:Test3_5.java
 
public class Test3_6{
 public static void main(String[] args){
    int a =13,b=0,sum =0;
    while(b<=1003){
     b = a+10;
     sum += a-b;
     a += 10;
     }
    System.out.println("求出13-23+33-43....973-983+993-1003的值为:"+sum);
 }
}
 
 
六、求1—1000之间可以同时被3、5、7整除的数字。
答:Test3_6.java
 
public class Test3_6{
 public static void main(String[] args){
    int a=1;
    System.out.println("1到1000之间可以同时被3、5、7整除的数字有:");
    for(int i=0;i<=1000;i++){
     if((a%3==0) && (a%5==0) && (a%7==0)){
        System.out.println(a+"/t");
     }
     a++;
     }
  }
}
 
 
 
七、使用for循环 打印下面的图形:
     *
*  *
*  *  *
*  *  *  *
* * *   * *
 
答:花了大半个小时,终于做得比较象了:
Test3_7.java
public class Test3_7{
 public static void main(String[] args){
    char a ='*';
    char b =' ';           //打印空格所需的字符
  
for(int i =1;i<=5;i++){     
     for(int n=4;n>=i;n--){     //打印4个空格,以后每行减少一个
 
          System.out.print(b);
     }
      for(int j=1;j<=i;j++){
           System.out.print(" "+a);   //打印1个空格和*,以后每行增加一个*
      }
      System.out.println();        //换行
     }
 }
}
 

*,以后每行增加一个*
      }
      System.out.println();        //换行
     }
 }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值