分析以下java代码 研究下面的java代码

求java大神,请分析以下代码,写出执行结果,并解释每行结果输出的原因。

第一行,定义了int类型一维数组a和二维数组b

专注于为中小企业提供成都网站制作、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业漠河免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

a={10,20,30,40}

b={{1,2},{4,5,6,7}}

第二行,b[0] = a; -- b={{10,20,30,40},{4,5,6,7}

第三行,b[0][1](20) = b[1][3](7); -- b={{10,7,30,40},{4,5,6,7}}(这里是地址引用,b[0]是a,所以b[0]改了,a也被改了)

最后:b[0][3] = 40,a[1] = 7

java代码详细分析

//求采纳

//一个随机数生成工具

Random rand = new Random();

// rand.nextInt() 用工具生成一个随机的整数

//rand.nextInt() % a.length 对上边数组长度取余 应该是对 52 取余

//任何整数对52取余结果只能是 -51 ~ 51 之间的一个整数

int index = rand.nextInt() % a.length; 

//如果得到的这个整数小于0 

if(index  0){ 

//用0 减去这个数即变成其相反数

index =  0 - index;

}

//从数组a中取对应位置的字符,比如index=2    a[index] 就是 c

return a[index];

请分析下以下java代码,System.out.println(str)中指向的是哪个值

System.out.println(str)中的str指向的是main函数中定义的str, 该对象的作用于仅限于main函数本身。public static void changeStr(String str){

str="welcome";

}

这里其实默认进行了几步操作:新建一个String类型的对象str。将main函数中调用时的参数str的值(1234)复制给changeStr函数中的str对象。同时在函数体中将该对象的值改变为welcome。这两个str对象虽然具有相同的对象名,但是其作用域均只限于定义它们的函数体内。

以下Java代码执行结果是什么,请详细分析为什么?

第一行输出结果是abc:

原因是:

s.substring(1);

s.replace("bc", "xyz");

这两句话没有任何作用 ~因为String是属于值传递~

第二行 输出结果是false:

原因是:

用==比较字符串,是比较两个变量本身的值,即两个对象在内存中的首地址。用equals比较就会为true,equals比较的是内容是否相同。

附:

1、值传递、引用传递的区别:

值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响实际参数的值。

引用传递:(形式参数类型是引用数据类型参数):也称为传地址。方法调用时,实际参数是对象(或数组),这时实际参数与形式参数指向同一个地址,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,这个结果在方法结束后被保留了下来,所以方法执行中形式参数的改变将会影响实际参数

2、用==比较和用equals比较的区别:

对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同.

“==”比较两个变量本身的值,即两个对象在内存中的首地址.

“equals()”比较字符串中所包含的内容是否相同.

java分析以下需求,并用代码实现:

根据需求,代码大致如下

public class T2 {

public static String getPropertyGetMethodName(String property) {

if (property == null || property.trim().length() == 0)

return "";

return "get" + String.valueOf(property.charAt(0)).toUpperCase()

+ property.subSequence(1, property.length());

}

public static void main(String[] args) {

System.out.println(getPropertyGetMethodName("a"));

System.out.println(getPropertyGetMethodName("name"));

System.out.println(getPropertyGetMethodName("names"));

}

}

网站题目:分析以下java代码 研究下面的java代码
新闻来源:https://www.cdcxhl.com/article44/dodpphe.html

成都网站建设公司_创新互联,为您提供品牌网站建设搜索引擎优化网站制作网站策划定制开发品牌网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计