java程序分析

java程序分析,第1张

前面两个不解释你应该都懂吧,后面两个很简单的,是引用变量哈,你把name传到方法中去了后,试用了name = new StringBuffer("yanfan"); 这样就相当于在changeName中的name重新引用了一个新的地址,changeName中的name和main中的name是不同的哈,只是引用地址相同,changeName里面相当于是一个局部定义了一个新的变量而已,而nickName 并没有重新new,则在changeName执行append的时候是表示在引用的地址后面加了1,所以只要只要那个地址的变量的值都变了,所以nickName 就变了

第一题:第一次点显示“广西大学”,第二次点显示“中央大学”

第二题,依次输出:

31415

123

true----->>>>>>(这里是你写错了么,如果不是,这程序编译的时候就出问题了!)

J

Java C++ Pascal

import javautilArrayList;

import javautilList;

//该类有三个方法,一个给list填充,一个处理并打印,一个在main执行

public class Test {

public static void main(String[] args) {

Test t = new Test();

tcontList();

tgetAllArray(list, 0);

}

private static List list = new ArrayList();

private void contList() {

listadd(new Integer(1));

listadd(new Integer(2));

listadd(new Integer(3));

}

//前面两个没啥好说的,这个是关键,该方法参数两个:一个List类型的inlist和一个整型的site

//这里单纯说这个方法太抽象,我们结合上面两个方法

//假设已经初始化了,inlist其实就是list(1,2,3)

public void getAllArray(List inlist, int site) {

//给出一个临时site,开始这两个site都是0

int tempsite = site;

//site会在下面的循环自增,到最后会等于inlist的大小等3,这时退出方法

if (site >= inlistsize()) {

return;

}

//名字起得很明白,第一个数字,也就是每一个数列的第一位,姑且称为首数

//再看怎么给它赋值的,原来直接在inlist中取值,第一个是1,因为inlist(1,2,3),get(0)=1

Integer firstNode = (Integer) inlistget(site++);

//再给出一个临时的list,这个list跟inlist是一样的列表(1,2,3),另外此时的site已为1了

List tempList = new ArrayList(inlist);

//临时列表发生了变化,移除了一个元素,

//很关键的是这个元素是由临时site决定的,此时tempsite依然为0

//因为引出的是具体元素的索引,临时list(1,2,3)中index=0时具体元素为1,

tempListremove(tempsite);

//首数为1,临时list(2,3),开始了它们的两个循环

// 此时临时list大小为2,所以第一个循环的次数必定为2,因为只有i=0和i=1

for (int i = 0; i < tempListsize(); i++) {

//先打印1

Systemoutprint(firstNode);

//开始第二个循环,j的初始值由i决定,循环次数是2+i

//此时j=0,j<2

for (int j = i; j < tempListsize() + i; j++) {

//因为j=0 < 2,所以执行条件1,打印出一个逗号和一个2,(2,3)中get(0)=2

//打印了2后又回到for里面,此时j已为1,还是条件1,get(1)=3,打印结果1,2,3

//最后一次j已不再小于2,跑到下面去打印“”去了,这个用来换行

if (j < tempListsize()) {

Systemoutprint("," + tempListget(j));

} else {

Systemoutprint("," + tempListget(j - tempListsize()));

}

}

//换行后继续回到第一个循环,i=1,第二个循环,j=1,get(1)=3,

// 然后继续第二个循环j=2,j<2+1,但是此时不满足条件1,跑到2,

// 打印逗号,get(2-2)即get(0)=2,也就是(1,3,2)

Systemoutprintln("");

}

//返回调用结果的结果,结果有两个数列(1,2,3)和(1,3,2)

//其他的就不啰嗦了

getAllArray(inlist, site);

}

}

以上就是关于java程序分析全部的内容,包括:java程序分析、分析JAVA程序,写出运行结果、一个JAVA程序的分析等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10130708.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存