初涉java感覺

你們好,無論誰看了個人博客,首先請你們原宥個人自大和個人拙見。首先先來解析一下我作的選作題,而後再談一談我學習java的感覺。 java

選作題的題目是:編寫一個應用程序,生成並打印輸出一個XXX-XXX-XXXX類型的電話號碼,包括鏈接線。前三個數字中不能有89,中間三個數字組成的數不能大於742.我第一次編寫的源程序是這樣的(其中附帶有解釋) dom

但第一次編寫的源程序中有缺陷。好比說num4雖然符合題目要求是三100取到742,而0-99之間的數如012,001這樣的數就取不到。一樣num5也有此缺陷。還有就是爲了簡便化,咱們能夠再定義一個String型變量num, System.out.println("The telephone number is:"+num1+num2+num3+"-"+num4+"-"+num5);替換爲num=」」+num1+num2+num3+’」-+num4+-+num5; System.out.println("The telephone number is:"+num);因此後來又參照盧紅威的源程序,對個人程序又進行改進。改進後的源程序以下。ide

   
   
   
   
  1. import java.util.Random;   /*import的申明告訴編譯器應該在哪裏尋找相關類,避免了每次都寫出類的全名*/ 
  2. public class Tel   /*定義Tel這個類*/ 
  3. {    
  4.    public static void main(String[] args)  
  5.    {  
  6.        Random generator=new Random();   /*對generator對象引用變量進行申明,並用Random();構造方法進行對象的初始化*/ 
  7.  
  8.        int num1,num2,num3,num4,num5;  /*對變量進行申明*/ 
  9.  
  10.        num1=generator.nextInt(8);    /*用「generator」對象調用Random類中的nextInt();方法對變量num1進行賦值,生成一個0-7範圍中的隨機數*/ 
  11.  
  12.        num2=generator.nextInt(8);    /*同上*/ 
  13.  
  14.        num3=generator.nextInt(8);    /*同上*/ 
  15.  
  16.        num4=generator.nextInt(643)+100;   /*用「generator」對象調用Random類中的nextInt();方法對變量num4進行賦值,生成一個100-642範圍中的隨機數*/ 
  17.  
  18.        num5=generator.nextInt(9000)+1000;   /*同上*/    
  19.  
  20.        System.out.println("The telephone number is:"+num1+num2+num3+"-"+num4+"-"+num5);    /*用字符串拼接輸出這個電話號碼*/ 
  21.  
  22.    }  

位數字,但它的範圍只能從學習

   
   
   
   
  1. /*import的申明告訴編譯器應該在哪裏尋找相關類,避免了每次都寫出類的全名*/  
  2. import java.util.Random;  
  3. /*定義Tel2這個類*/    
  4. public class Tel2     
  5. {    
  6.    public static void main(String[] args)  
  7.    {  
  8.        /*用new運算符建立對象,並用Random();構造方法進行對象的初始化*/  
  9.        Random generator=new Random();  
  10.        /*申明5個int類型的基本變量,num一、num二、num3分別表明電話號碼的前三位數字,numb是爲生成電話號碼的中間三位數字而生成的0-742的隨機數,numc是爲生成電話號碼的最後四位數字而生成的0-9999的隨機數*/    
  11.        int num1,num2,num3,numb,numc;  
  12.        /*申明3個String類型的變量,numa是電話號碼的前三位數,numb1是電話號碼的中間三位數,numc1是電話號碼的最後四位數*/    
  13.        String numa,numb1,numc1;   
  14.        /*用「generator」對象調用Random類中的nextInt();方法對變 量num1進行賦值,生成一個0-7範圍中的隨機數*/     
  15.        num1=generator.nextInt(8);    
  16.        num2=generator.nextInt(8);     
  17.        num3=generator.nextInt(8);  
  18.        /*用num一、num二、num3以字符串的形式組成numa來表示電話號碼的前三位數字*/     
  19.        numa=""+num1+num2+num3;     
  20.        System.out.println("The first number is:"+numa);  
  21.        /*用「generator」對象調用Random類中的nextInt();方法對變量numb進行賦值,生成一個0-742範圍中的隨機數*/  
  22.        numb=generator.nextInt(743);    
  23.        /*此if語句限定隨機數是三位數字的話就輸出*/  
  24.        if(numb>=100)      
  25.        {  
  26.          numb1=""+numb;  
  27.          System.out.println("The second number is:"+numb1);  
  28.        }  
  29.        /*用else語句限定若是隨機數是一位則在其前補兩個00,是三位則在其前補一個0,使它們構成電話號碼的中間三位數字*/  
  30.        else  
  31.        {  
  32.           if(numb<10)  
  33.           {  
  34.             numb1="00"+numb;  
  35.             System.out.println("The second number is:"+numb1);  
  36.           }  
  37.           else  
  38.           {  
  39.             numb1="0"+numb;  
  40.             System.out.println("The second number is:"+numb1);  
  41.           }  
  42.        }  
  43.        /*如下生成的電話號碼的後四位數字numc1和上面生成的numb1作法相同*/  
  44.        numc=generator.nextInt(10000);  
  45.        if(numc>=1000)  
  46.        {  
  47.          numc1=""+numc;  
  48.          System.out.println("The third number is:"+numc1);  
  49.        }  
  50.        else  
  51.        {  
  52.           if(numc<10)  
  53.           {  
  54.             numc1="000"+numc;  
  55.             System.out.println("The third number is:"+numc1);  
  56.           }  
  57.           else  
  58.           {  
  59.              if(numc<100)  
  60.              {  
  61.                numc1="00"+numc;  
  62.                System.out.println("The third number is:"+numc1);  
  63.              }  
  64.              else  
  65.          {  
  66.                numc1="0"+numc;  
  67.                System.out.println("The third numer is:"+numc1);  
  68.              }  
  69.           }  
  70.        }  
  71.    /*以字符串的形式打印輸出這個電話號碼*/   
  72.    System.out.println("The telephone number is:"+numa+"-"+numb1+"-"+numc1);    
  73.    }  

 

  第二次寫的程序對取值範圍的侷限性和不簡化性都進行了改進。也許仍是不盡完美,但願老師和同窗們能指出有缺陷的地方。 spa

  如今來談一談我學習java的感覺。我以爲學習java首先須要咱們有耐心,就像我第二次作選作題同樣,首先我要把本身寫的源程序看一遍回想本身的作題思想、思路和老師給我指出的不足、缺陷。再者我還要把盧紅威的源程序給看懂,找出他的解題思路。固然我本身寫出來的源程序在編譯、運行時也會出不少的錯誤,好比我爲了使程序簡化和一目瞭然,我加了這樣的語句numa=""+num1+num2+num3;num=""+numa+"-"+numb+"-"+numc;但我忘記對其進行Sring numa,num;這樣的申明瞭,致使沒法編譯。固然作的過程當中還出現了其它不少的問題,因此就須要咱們沉着心,耐着性子,咱們才能把它作完。第二個是上課聽講要仔細,我以爲java就是要咱們過細,不少時候老師在課堂上無心中講的一句話也許就是一個重點,好比說用java運行字節碼程序時不要後綴名.class,不然咱們就沒法運行;不是public的類,文件名和類名能夠不同。這些細節都是咱們在課堂上聽課須要注意的。編寫程序的時候也是要求咱們過細,這樣咱們才能編寫出一個成功的程序,固然編寫出一個成功程序的前提仍是咱們須要熟悉和掌握java的語法和規則,這就須要咱們多看書。最後是咱們要有一個越難的東西咱們越要征服它的心態。我以爲java和英語差很少,不是說像高數那樣難的咱們都看不懂,只是它有點繁瑣,像英語同樣有不少的語法,規則須要咱們去了解和記憶。好比說它有不少的包,報下面又有不少的類,類中又有不少的方法,這些只有當咱們熟悉它,吃透它以後,用起來的時候咱們才能得心應手。我常常告誡本身,作什麼事都不是一蹴而就的,是須要咱們付出的,學習java更是要咱們付出咱們的耐心的。 xml

    固然,我也是初涉java,這只是我目前的愚見。但願不對的地方還請你們指出來。 對象

相關文章
相關標籤/搜索