這個問題用遞歸很好解決,本次跳起的高度是上次跳起高度的一半,而第0次跳起的高度是100米。這次彈跳的總長度是上次跳起的總長度加上上次跳起的高度和本次跳起的高度,而第0次跳起的總長度是0米。代碼如下:
創(chuàng)新互聯(lián)是一家專業(yè)從事網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,創(chuàng)新互聯(lián)依托強大的技術(shù)實力、以及多年的網(wǎng)站運營經(jīng)驗,為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計開發(fā)服務(wù)!
public class BallJump {
public double heightOfCount(int jumpCount) {//返回第jumpCount次跳起的高度
if (jumpCount == 0) {//遞歸結(jié)束條件
return 100.0;
} else {
//本次跳起的高度是上次跳起的一半
return heightOfCount(jumpCount - 1) / 2;
}
}
public double lengthOfCount(int jumpCount) {//返回第jumpCount次跳起球經(jīng)過的總長度
if (jumpCount == 0) {//遞歸跳出條件
return 0.0;
} else {
//這次跳起的總長度,是上次跳起的總長度加上上次跳起的高度和本次跳起的高度之和
return lengthOfCount(jumpCount - 1)
+ (heightOfCount(jumpCount) + heightOfCount(jumpCount - 1));
}
}
public static void main(String[] args) {
BallJump ball = new BallJump();
double h = ball.heightOfCount(10);
System.out.println(h);
double l = ball.lengthOfCount(10);
System.out.println(l);
}
}
程序運行的結(jié)果是:
0.09765625
299.70703125
js來實現(xiàn)吧
先在父頁面中寫好你的子窗口,div或者table,隱藏的。
點擊按鈕,顯示隱藏的部分,操作完畢。觸發(fā)另一個js方法,同時隱藏掉子窗口,取值,然后賦值給父頁面
說說servlet里面的方法:
public void ValidateUserPass(String user,String pass){
RequestDispathcher rd =null
//假使你的代碼是從DB中獲取
DBFactory db=DBFactoryImpl.getDBFactoryInstance();//得到數(shù)據(jù)庫鏈接
flg=db.findUser(user,pass);
// 這里是不存在用戶
if(flg.hasNext()==-1){
// 登錄時錯誤了,一般我們會給用戶一個提示
session.setAttirbute("msg","對不起,用戶名或密碼錯誤");
RequestDispathcher rd = req.getRequesDispatcher("login.jsp");
rd.forward(request, reponse);//將請求對象和響應(yīng)對象傳遞進來
} // 這里是存在當(dāng)前用戶
else{
//當(dāng)然這里登錄成功時,我們要把當(dāng)前用戶寫到session里面保存
session.setAttirbute("userName",user);
//這個請求轉(zhuǎn)發(fā)語句
request.sendRedirect("index.html");
}
}
// * 上述代碼,你可以參考下我的方法,我也很久沒做JAVA開發(fā)了,我現(xiàn)在從事前端UI開發(fā),本來我想在寫一個用struts 2登錄的程序的,可我現(xiàn)在忘得差不多了,上面我所用到的屬性建議你自己好好的研究一下,往后你將學(xué)到struts2 hibernate,Spring等一系列優(yōu)秀的開源框架,說白了,這些東西的底層還是這些,只不過這些框架做了一些封裝隔離。上述代碼建議你重點理解一下:請求轉(zhuǎn)發(fā)和重定向的區(qū)別。
彈出消息,可以使用 TrayIcon 的 displayMessage() 方法,代碼如下:
import?java.awt.*;
import?java.awt.TrayIcon.MessageType;
import?javax.swing.JButton;
import?javax.swing.JFrame;
public?class?App?extends?JFrame?{
private?static?final?long?serialVersionUID?=?1L;
private?TrayIcon?trayIcon;
public?App()?{
this.setSize(300,?200);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(new?FlowLayout());
JButton?btnTest?=?new?JButton("彈出消息");
btnTest.addActionListener(e?-?{
//?彈出消息
trayIcon.displayMessage("Tray?Demo",?"Hello?World!",?MessageType.INFO);
});
this.add(btnTest);
if?(SystemTray.isSupported())?{
SystemTray?tray?=?SystemTray.getSystemTray();
Image?image?=?Toolkit.getDefaultToolkit().getImage("images/tray16.png");
this.trayIcon?=?new?TrayIcon(image);
try?{
tray.add(trayIcon);
}?catch?(AWTException?e)?{
e.printStackTrace();
}
}
}
public?static?void?main(String[]?args)?{
new?App().setVisible(true);
}
}