java代码请祥注解一下

[复制链接]
查看11 | 回复3 | 2010-8-30 17:59:17 | 显示全部楼层 |阅读模式
public String replaceString(String s)

{

char ac[] = s.toCharArray();

int ai[] = new int[10];

int i = 0;

for(int j = 0; j != ac.length; j++)

{

char c = ac[j];

if(c == '\\')

{

ai = j;

i++;

}

}

int k = i + 1;

String as[] = new String[k];

as[0] = s.substring(0, ai[0]);

as[k - 1] = s.substring(ai[i - 1] + 1);

for(int l = 1; l != as.length - 1; l++)

as[l] = s.substring(ai[l - 1] + 1, ai[l]);

s = "";

for(int i1 = 0; i1 != as.length - 1; i1++)

s = s + as[i1] + "%5C";

s = s + as[k - 1];

return s;

}

回复

使用道具 举报

千问 | 2010-8-30 17:59:17 | 显示全部楼层
//该函数的功能是将字符串s中的‘\’用‘%5C’代替public String replaceString(String s)
{
char ac[] = s.toCharArray();//将字符串s转换成字符数组ac
int ai[] = new int[10];//定义整形数组ai,用于记录‘\’的位置
int i = 0;//定义i作为计数变量 //循环,找出字符数组ac中字符'\'的个数和位置
for(int j = 0; j != ac.length; j++)
{
char c = ac[j];
回复

使用道具 举报

千问 | 2010-8-30 17:59:17 | 显示全部楼层
代码有问题,数组下标越界
回复

使用道具 举报

千问 | 2010-8-30 17:59:17 | 显示全部楼层
写得太烂了,定义了那么多变量、数组、有那么多循环,完成的只是很简单的功能。String类有replace()、replaceAll()、indexOf()、subString()这些方法,很容易就搞定了。如果你不想用这些方法,也完全可以写得更精练些,这样的代码既不好读,效率又不高。如果你是java新手,最好还是不要参照这种水平的代码。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行