??xml version="1.0" encoding="utf-8" standalone="yes"?>
private static int MAX = 100;
/*
* print the Fibonacci sequence for values < MAX
*/
public static void main(String[] args) {
int currentVal = 1;
int nextVal = 1;
while(currentVal<MAX){
System.out.println(currentVal);
nextVal = nextVal + currentVal ;
currentVal = nextVal - currentVal;
}
}
}
]]>
马嘉?/font> 2006-12-07
最q一直在?不过忙得很充?学到?jin)很多东?准备一点一Ҏ(gu)?
q个密码验证很简?作ؓ(f)一个独立的控g,可以拿来直接用^+^
pwd.html
<
HTML
>
<
HEAD
>
<
TITLE
>
密码修改
</
TITLE
>
</
HEAD
>
<
script
language
="javascript"
>
//
密码修改
function
CheckUpdatePwd(text){
if
(
!
confirm(
"
认修改密码?
"
))
return
;
var
newpwd
=
window.showModalDialog('confirmpwd.htm',
""
,
"
dialogWidth: 280px; dialogHeight: 150px; help: no; status: no
"
);
if
(newpwd
==
""
||
newpwd
==
null
) {
alert(
"
密码没有修改!
"
);
return
true
;
}
else
{;
text.value
=
newpwd;
return
;
}
}
</
script
>
<
BODY
>
<
table
id
="pwdTable"
width
="100%"
height
="100%"
border
="0"
cellspacing
="2"
cellpadding
="0"
>
<
tr
>
<
td
align
="right"
width
="75"
>
客户密码Q?/span>
</
td
>
<
td
>
<
input
type
="password"
datafld
="cust_pwd"
name
="cust_pwd"
style
="border:1px solid #CCCCCC; font-size:12px; background-color:#FFFFFF; width:135px"
onFocus
="CheckUpdatePwd(this)"
maxlength
="6"
>
<
font
color
="#FF0000"
>
Q?/span>
</
font
>
</
td
>
</
tr
>
</
table
>
</
BODY
>
</
HTML
>
confirmpwd.htm
<
head
>
<
meta
http-equiv
="Content-Type"
content
="text/html; charset=gb2312"
>
<
link
href
="../../css/all_import.css"
rel
=stylesheet
>
<
title
>
密码修改
</
title
>
<
script
language
="JavaScript"
type
="text/JavaScript"
>
function
modifyPwd() {
var
newPwd
=
document.all(
"
newPwd
"
).value;
var
confirmPwd
=
document.all(
"
confirmPwd
"
).value;
if
(newPwd.length
==
0
) {
alert(
"
误入新密码!
"
);
return
;
}
else
if
(newPwd.length
!=
confirmPwd.length){
alert(
"
密码长度不一?请重新输?
"
);
resetConfirmPwd();
return
;
}
else
if
(newPwd
!=
confirmPwd) {
alert(
"
两次输入的密码不一?请重新输?
"
);
resetConfirmPwd();
return
;
}
else
{
alert(
"
密码修改成功!
"
)
window.returnValue
=
newPwd;
window.close();
}
}
function
resetConfirmPwd(){
document.all.newPwd.value
=
""
;
document.all.confirmPwd.value
=
""
;
}
</
script
>
</
head
>
<
body
bgcolor
="#f0f0f0"
>
<
table
width
="100%"
border
="0"
cellpadding
="0"
cellspacing
="0"
>
<
tr
>
<
td
colspan
="3"
align
="right"
>
</
td
>
</
tr
>
<
tr
>
<
td
>
</
td
>
<
td
width
="100"
align
="right"
style
="border:1px solid #CCCCCC; font-size:12px;"
>
误入新密码Q?/span>
</
td
>
<
td
width
="120"
>
<
input
name
="newPwd"
type
="password"
id
="newPwd"
maxlength
="6"
style
="width:135px"
></
td
>
<
td
>
</
td
>
</
tr
>
<
tr
>
<
td
>
</
td
>
<
td
width
="100"
align
="right"
style
="border:1px solid #CCCCCC; font-size:12px;"
>
L(fng)认新密码Q?/span>
</
td
>
<
td
width
="120"
>
<
input
name
="confirmPwd"
type
="password"
id
="confirmPwd"
maxlength
="6"
style
="width:135px"
></
td
>
<
td
>
</
td
>
</
tr
>
</
table
>
<
table
width
="100%"
height
="60"
border
="0"
cellpadding
="0"
cellspacing
="0"
>
<
tr
align
="center"
>
<
td
>
</
td
>
<
td
width
="65"
>
<
input
name
="ok"
type
="button"
class
="btn_70"
id
="ok"
value
=" 定"
onClick
="modifyPwd()"
></
td
>
<
td
width
="15"
>
</
td
>
<
td
width
="65"
>
<
input
name
="reset"
type
="button"
class
="btn_70"
id
="reset"
value
="重 置"
onClick
="resetConfirmPwd()"
></
td
>
<
td
width
="15"
>
</
td
>
<
td
width
="65"
>
<
input
name
="close"
type
="button"
class
="btn_70"
id
="close"
value
="ꐠ闭"
onClick
="window.close()"
>
</
td
>
<
td
>
</
td
>
</
tr
>
</
table
>
</
body
>
</
html
>
]]>
昄效果如下Q?br />
2
5
8
6
7
9
import
java.io.BufferedReader;
import
java.io.IOException;
import
java.io.InputStreamReader;
public
class
Main {
public
static
void
main(String[] args)
throws
NumberFormatException,
I(yng)OException {
System.out.println(
"
误入数l的大小Q?/span>
"
);
BufferedReader br
=
new
BufferedReader(
new
I(yng)nputStreamReader(System.in));
int
arraySize
=
I(yng)nteger.parseInt(br.readLine());
int
[][] a
=
new
int
[arraySize][arraySize];
int
row
=
0
;
int
number
=
1
;
//
准备填充的数?/span>
int
snakeLine
=
0
;
//
snakeLine代表斜行Q蛇行)(j)敎ͼ׃snakeLine会(x)用于数组下标的计,所以从0开始计?/span>
for
(; snakeLine
<
2
*
arraySize
-
1
; snakeLine
++
) {
if
(snakeLine
<
arraySize)
//
左上半部?/span>
{
if
(snakeLine
%
2
!=
0
)
//
奇数斜行
{
for
(row
=
snakeLine; row
>=
0
; row
--
)
a[row][snakeLine
-
row]
=
number
++
;
}
else
{
for
(row
=
snakeLine; row
>=
0
; row
--
)
a[snakeLine
-
row][row]
=
number
++
;
}
}
else
{
//
右下半部?/span>
if
(snakeLine
%
2
!=
0
) {
for
(row
=
arraySize
-
1
; row
>
snakeLine
-
arraySize; row
--
)
a[row][snakeLine
-
row]
=
number
++
;
}
else
{
for
(row
=
arraySize
-
1
; row
>
snakeLine
-
arraySize; row
--
)
a[snakeLine
-
row][row]
=
number
++
;
}
}
}
System.out.println(
"
Result as followsQ\n
"
);
for
(row
=
0
; row
<
arraySize; row
++
) {
for
(number
=
0
; number
<
arraySize; number
++
) {
//
number此处作ؓ(f)数组的下标?/span>
System.out.print(a[row][number]
+
"
\t
"
);
}
System.out.println();
System.out.println();
}
}
}
]]>
马嘉?/font> 2006-11-08
今天在一个论坛看到有人问一个很老的问题?/font>
?font color="#a52a2a">10个h围一圈,~号?的h开始数敎ͼ数到能被3整除的编L(fng)人退出,然后再往下数。问最后剩几个人?
如第一圈后Q?Q?Q?退出,q剩7Z一圈从W?1开始数。求法?/font>
看到q这个题目很多次Q从来都没有仔细惌写过代码?
下面的方法是我今天看到题目后的第一反应Q应该有更好的吧?br />
你们都是怎么做的啊,学习(fn)一下,谢谢啦!
我算法很q。。?/font>
一、数l实?/font>
1. for循环初始化每个h的gؓ(f)0
2. 开始报敎ͼ如果所报之数能?整除Q设|此人的gؓ(f)1
3. 如此循环下去Q直到只有一个h的gؓ(f)0
4. 获得此h在数l中的下标,?之后输出Q即为所?/font>
操作l束关闭数据库连接以?qing)ResultSetQ否则保持数据库的连接ƈ直接对ResultSet中的数据q行操作Q会(x)使效率低下,同时很可能出现错误?br />
此时我们需要在关闭l果集ResultSet之前Q保存其中我们需要的数据?/font>
我这里介l的Ҏ(gu)是将ResultSet中的数据存储C个VO对象当中QResultSet中每一个记录对应一个VOQVO是数据库中表的映射Q,之后再把q些VO存储到ArrayList当中Q返回List方便其他Ҏ(gu)处理?/font>
希望能给初学者以帮助Q同时请高手不吝赐教Q有没有更好的处理方法,或者我的代码由不合理的地方Q也h提出宝贵意见Q共同学?fn),共同q步Q?br />
代码如下(我把实际代码化了(jin)一下,BlogJavaVO中的一些函数在q里没有调用)Q?/font>
protected ArrayList fetchMultiResults(ResultSet rs) throws SQLException {
ArrayList resultList = new ArrayList();
while (rs.next()) {
BlogJavaVO vo = new BlogJavaVO();
populateData( vo, rs);
resultList.add( vo );
}
return resultList;
}
protected void populateData(BlogJavaVO vo, ResultSet rs) throws SQLException {
vo.setUrl(DAOUtils.trimStr(rs.getString("url")));
vo.setName(DAOUtils.trimStr(rs.getString("name")));
vo.setDate(DAOUtils.getFormatedDate(rs.getDate("date"));
}
public class DAOUtils {
... ...
/**
* 提供删除字符串前后的I格的功?br /> * @param str
* @return
*/
public static String trimStr(String str) {
if (null == str)
return "";
else
return str.trim();
}
... ...
}
VO是数据库中表的映?br />Vo代码如下Q?/font>
public class BlogJavaVO implements VO {
private String url = "";
private String name = "";
private String date = ""; //数据库表BlogJava中的属性设|ؓ(f)旉
public BlogJavaVO() {}
public BlogJavaVO( String purl, String pname, String pdate ) {
this.url = purl;
this.name = pname;
this.date = pdate;
}
public String getUrl() {
return url;
}
public String getName() {
return name;
}
public String getDate() {
return date;
}
public void setUrl(String purl) {
this.url = purl;
}
public void setName(String pname) {
this.name = pname;
}
public void setDate(String pdate) {
this.date = pdate;
}
public HashMap unloadToHashMap() {
HashMap hashMap = new HashMap();
hashMap.put("URL",this.url);
hashMap.put("NAME",this.name);
hashMap.put("DATE",this.date);
return hashMap;
}
public void loadFromHashMap(HashMap hashMap) {
if (hashMap != null) {
this.url = (String) hashMap.get("URL");
this.name = (String) hashMap.get("NAME");
this.date = (String) hashMap.get("DATE");
}
}
public List getKeyFields() {
ArrayList arrayList = new ArrayList();
arrayList.add("url");
return arrayList;
}
public String getTableName() {
return "BlogJava";
}
}
import java.io.Serializable;
import java.util.*;
/**
* @Classname : VO
* @Description : 公共数据对象接口,对于每个表值对象, 相应的接口函C用代码生成器q行生
* @Copyright
* @Author :
* @Create Date :
*
* @Last Modified :
* @Modified by :
* @Version : 1.0
*/
public interface VO extends Serializable {
// 把数据导出到HashMap中, HashMap的关键字为对应的表字D名?br /> // 使用代码生器生?br /> public HashMap unloadToHashMap();
// 从HashMap中读取数? 使用代码生器生?br /> public void loadFromHashMap(HashMap map);
// 获取关键字列表, 使用代码生器生?br /> public List getKeyFields();
// 获取对应的表名, 使用代码生器生?br /> String getTableName();
}