天天看點

Java基礎部分10

一個整數,大于0,不用循環和本地變量,按照n,2n,4n,8n的順序遞增,當值大于5000時,把值按照指定順序輸出來。

例:n=1237

則輸出為:

1237,

2474,

4948,

9896,

提示:寫程式時,先緻謝按遞增方式的代碼,寫好遞增的以後,再增加考慮遞減部分。

    publicstatic void doubleNum(int n)

    {

       System.out.println(n);

       if(n<=5000)

           doubleNum(n*2);

       System.out.println(n);     

    }

Gaibaota(N) = Gaibaota(N-1) + n

<a href="http://s3.51cto.com/wyfs02/M02/4B/EE/wKioL1Q1LCvh8My4AAB48F1jLHo966.jpg" target="_blank"></a>

第1個人10,第2個比第1個人大2歲,依次遞推,請用遞歸方式計算出第8個人多大?

package cn.itcast;

import java.util.Date;

publicclass A1 {

    publicstaticvoid main(String [] args)

       System.out.println(computeAge(8));

    publicstaticint computeAge(int n)

       if(n==1) return 10;

       return computeAge(n-1) + 2;

}

    publicstaticvoid toBinary(int n,StringBuffer result)

       if(n/2 != 0)

           toBinary(n/2,result);

       result.append(n%2);     

 本人隻研究過冒泡排序、選擇排序和快速排序,下面是快速排序的代碼:

public class QuickSort{

/**

* 快速排序

* @param strDate

* @param left

* @param right

*/

public void quickSort(String[] strDate,int left,int right){

String middle,tempDate;

int i,j;

i=left;

j=right;

middle=strDate[(i+j)/2];

do{

while(strDate[i].compareTo(middle)&lt;0&amp;&amp; i&lt;right)

i++; //找出左邊比中間值大的數

while(strDate[j].compareTo(middle)&gt;0&amp;&amp; j&gt;left)

j--; //找出右邊比中間值小的數

if(i&lt;=j){ //将左邊大的數和右邊小的數進行替換 

tempDate=strDate[i];

strDate[i]=strDate[j];

strDate[j]=tempDate;

i++;

j--;

}while(i&lt;=j); //當兩者交錯時停止

if(i&lt;right){

quickSort(strDate,i,right);//從

if(j&gt;left){

quickSort(strDate,left,j);

  * @param args

  */

public static void main(String[] args){

String[] strVoid=newString[]{"11","66","22","0","55","22","0","32"};

QuickSort sort=new QuickSort();

sort.quickSort(strVoid,0,strVoid.length-1);

for(int i=0;i&lt;strVoid.length;i++){

System.out.println(strVoid[i]+" ");

//用下面的也可以

//for(int i=0,intj=a.length-1;i&lt;j;i++,j--) 是否等效于 for(inti=0;i&lt;a.length/2;i++)呢?

import java.util.Arrays;

public class SwapDemo{

    public static void main(String[] args){

       int [] a = new int[]{

                     (int)(Math.random() * 1000),

                     (int)(Math.random() * 1000),                    

                     (int)(Math.random() * 1000)                                                            

       }; 

       System.out.println(a);

       System.out.println(Arrays.toString(a));

       swap(a);

       System.out.println(Arrays.toString(a));      

    public static void swap(int a[]){

       int len = a.length;

       for(int i=0;i&lt;len/2;i++){

           int tmp = a[i];

           a[i] = a[len-1-i];

           a[len-1-i] = tmp;

       }

去零的代碼:

     returnsb.reverse().toString().replaceAll("零[拾佰仟]","零").replaceAll("零+萬","萬").replaceAll("零+元","元").replaceAll("零+","零");

public class RenMingBi {

       /**

        * @param args add by zxx ,Nov 29, 2008

        */

       privatestatic final char[] data = new char[]{

                     '零','壹','貳','叁','肆','伍','陸','柒','捌','玖'

              };

       privatestatic final char[] units = new char[]{

              '元','拾','佰','仟','萬','拾','佰','仟','億'

       };

       publicstatic void main(String[] args) {

              // TODO Auto-generated method stub

              System.out.println(

                            convert(135689123));

       publicstatic String convert(int money)

       {

              StringBuffersbf = new StringBuffer();

              intunit = 0;

              while(money!=0)

              {

                     sbf.insert(0,units[unit++]);

                     intnumber = money%10;

                     sbf.insert(0,data[number]);

                     money/= 10;

              }

              returnsbf.toString();

       如何用腳本判斷使用者輸入的的字元串是下面的時間格式2004-11-21必須要保證使用者的輸入是此格式,并且是時間,比如說月份不大于12等等,另外我需要使用者輸入兩個,并且後一個要比前一個晚,隻允許用JAVASCRIPT,請詳細幫助作答,,

//這裡可用正規表達式判斷提前判斷一下格式,然後按下提取各時間字段内容

&lt;scripttype="text/javascript"&gt;

   window. function()

   {

        //這麼寫是為了實作js代碼與html代碼的分離,當我修改js時,不能影響html代碼。

        document.getElementById("frm1").onsubmit=

               function(){

                      vard1 = this.d1.value;

                      vard2 = this.d2.value;

                      if(!verifyDate(d1)) {alert("第一個日期格式不對");return false;}

                      if(!verifyDate(d2)) {alert("第二個日期格式不對");return false;}

                      if(!compareDate(d1,d2)){alert("第二個日期比第一日期小");returnfalse;}                 

               };

        }

        functioncompareDate(d1,d2)

        {

               vararrayD1 = d1.split("-");

               vardate1 = new Date(arrayD1[0],arrayD1[1],arrayD1[2]);

               vararrayD2 = d2.split("-");

               vardate2 = new Date(arrayD2[0],arrayD2[1],arrayD2[2]);

               if(date1&gt; date2) return false;             

               returntrue;

        functionverifyDate(d)

               vardatePattern = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/;

               returndatePattern.test(d);

&lt;/script&gt;

&lt;form id="frm1"action="xxx.html"&gt;

&lt;input type="text"name="d1" /&gt;

&lt;input type="text"name="d2" /&gt;

&lt;input type="submit"/&gt;

&lt;/form&gt;

&lt;body&gt;

&lt;table id="tbl"&gt;

   &lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;7&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;8&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;9&lt;/td&gt;&lt;/tr&gt;

   &lt;tr&gt;&lt;td&gt;10&lt;/td&gt;&lt;/tr&gt;

&lt;/table&gt;

&lt;/body&gt;

   window.onload=function()

               vartbl = document.getElementById("tbl");

               rows= tbl.getElementsByTagName("tr");

               for(i=0;i&lt;rows.length;i++)

               {

                      varj = parseInt(i/3);

                      if(j%2==0)rows[i].style.backgroundColor="#f00";

                      else  rows[i].style.backgroundColor="#0f0";

               }

本文轉自  素顔豬  51CTO部落格,原文連結:http://blog.51cto.com/suyanzhu/1561394