首页 > 其他分享 >CS61B srping 2018 examprep01(?02) https://sp18.datastructur.es/

CS61B srping 2018 examprep01(?02) https://sp18.datastructur.es/

时间:2024-12-02 21:34:34浏览次数:5  
标签:02 srping sp18 int same static __ Foo public

1.写出 第21、24行的运行结果。(画出box-pointer指示图会对答题很有帮助)

1 public class Shock {
2 public static int bang;
3 public static Shock baby;
4 public Shock() {
5 this.bang = 100;
6 }
7 public Shock (int num) {
8 this.bang = num;
9 baby = starter();
10 this.bang += num;
11 }
12 public static Shock starter() {
13 Shock gear = new Shock();
14 return gear;
15 }
16 public static void shrink(Shock statik) {
17 statik.bang -= 1;
18 }
19 public static void main(String[] args) {
20 Shock gear = new Shock(200);
21 System.out.println(gear.bang); __300______
22 shrink(gear);
23 shrink(starter());
24 System.out.println(gear.bang); __99______
25 }
26 }

  1. 为下列程序画出box-ptr图,并说明程序输出是什么
public class Horse {
Horse same;
String jimmy;

public Horse(String lee) {
jimmy = lee;
}

public Horse same(Horse horse) {
if (same != null) {
Horse same = horse;
same.same = horse;
same = horse.same;
}
return same.same;
}

public static void main(String[] args) {
Horse horse = new Horse("youve been");
Horse cult = new Horse("horsed");
cult.same = cult;
cult = cult.same(horse);
System.out.println(cult.jimmy);
System.out.println(horse.jimmy);
}
}


  1. 填写main中 foobar 和baz 的 x、y的值,
1 public class Foo {
2 public int x, y;
3
4 public Foo (int x, int y) {
5 this.x = x;
6 this.y = y;
7 }
8
9 public static void switcheroo (Foo a, Foo b) {
10 Foo temp = a;
11 a = b;
12 b = temp;
13 }
14
15 public static void fliperoo (Foo a, Foo b) {
16 Foo temp = new Foo(a.x, a.y);
17 a.x = b.x;
18 a.y = b.y;
19 b.x = temp.x;
20 b.y = temp.y;
21 }
22
23 public static void swaperoo (Foo a, Foo b) {
24 Foo temp = a;
25 a.x = b.x;
26 a.y = b.y;
27 b.x = temp.x;
28 b.y = temp.y;
29 }
30
31 public static void main (String[] args) {
32 Foo foobar = new Foo(10, 20);
33 Foo baz = new Foo(30, 40);
34 switcheroo(foobar, baz); foobar.x: __10_ foobar.y: _20__ baz.x: __30_ baz.y: _40__
35 fliperoo(foobar, baz); foobar.x: _30__ foobar.y: _40__ baz.x: __10_ baz.y: _20__
36 swaperoo(foobar, baz); foobar.x: _10__ foobar.y: _20__ baz.x: _10__ baz.y: _20__
37 }
38 }

switcheroo 内部变完,不影响外部。
fliperoo 会影响外部,交换两个Foo实例的值
swaperoo 会影响外部,把Foo a 的x、y 值变成Foo b的x、y值


  1. 下列程序运行后 ,arr的内容会是什么?
public class QuikMaths {
public static void mulitplyBy3(int[] A) {
for (int x: A) {
x = x * 3;
}
}

public static void multiplyBy2(int[] A) {
int[] B = A;
for (int i = 0; i < B.length; i+= 1) {
B[i] *= 2;
}
}

public static void swap (int A, int B ) {
int temp = B;
B = A;
A = temp;
}

public static void main(String[] args) {
int[] arr;
arr = new int[]{2, 3, 3, 4};
multiplyBy3(arr);

/* Value of arr: {2, 3, 3, 4} */

arr = new int[]{2, 3, 3, 4};
multiplyBy2(arr);

/* Value of arr: {4, 6, 6, 8} */

int a = 6;
int b = 7;
swap(a, b);

/* Value of a: 6 Value of b: 7 */
}
}

标签:02,srping,sp18,int,same,static,__,Foo,public
From: https://www.cnblogs.com/nulixuexipython/p/18582501

相关文章

  • Bitbucket:Bitbucket问题追踪与解决方案_2024-07-18_06-36-45.Tex
    Bitbucket:Bitbucket问题追踪与解决方案理解Bitbucket问题追踪系统Bitbucket问题追踪系统简介Bitbucket问题追踪系统是Atlassian公司提供的一种集成在Bitbucket平台上的工具,用于管理软件开发过程中的问题、错误、需求和改进。它提供了一个直观的界面,允许团队成员报告问题......
  • 2024NOIP VP 回家一日游记
    考不上noip。vp还写游记的屑。Day-1疯狂星期四后一天照例回家。上火车前发现舟要更新183MB。遂省下流量。我真是勤俭持家。发现没事情干了,凹混沌回忆。在火车站等车。EEEEE1111333441。弹。转。死。又开一次。EEEEE1133EE4412。弹。转。赢。抬头。列车已停止检票。......
  • Bitbucket:Bitbucket与Jira集成使用教程_2024-07-18_05-37-09.Tex
    Bitbucket:Bitbucket与Jira集成使用教程Bitbucket与Jira集成概述1.1什么是BitbucketBitbucket是Atlassian公司提供的一款基于Web的代码版本控制工具,它支持Git和Mercurial两种版本控制系统。Bitbucket允许用户创建私有或公共的代码仓库,进行代码的存储、共享和协作。它还提......
  • Bitbucket:Bitbucket与Jira集成使用教程_2024-07-18_05-37-09.Tex
    Bitbucket:Bitbucket与Jira集成使用教程Bitbucket与Jira集成概述1.1什么是BitbucketBitbucket是Atlassian公司提供的一款基于Web的代码版本控制工具,它支持Git和Mercurial两种版本控制系统。Bitbucket允许用户创建私有或公共的代码仓库,进行代码的存储、共享和协作。它还提......
  • Bitbucket:Bitbucket云与服务器版对比_2024-07-18_04-33-39.Tex
    Bitbucket:Bitbucket云与服务器版对比Bitbucket概述Bitbucket云简介Bitbucket云是Atlassian提供的一种基于云的版本控制系统,它主要为开发团队提供了一个集中式的代码存储库,支持Git和Mercurial两种版本控制工具。Bitbucket云版特别适合那些希望无需管理自己的服务器,即可享......
  • Bitbucket:Bitbucket自动化构建与持续集成_2024-07-18_05-50-15.Tex
    Bitbucket:Bitbucket自动化构建与持续集成理解自动化构建与持续集成自动化构建的重要性自动化构建是软件开发流程中不可或缺的一部分,它通过自动化工具在代码提交后自动执行编译、测试和打包等操作,确保代码的质量和项目的稳定性。这一过程减少了人工干预的错误,提高了开发效......
  • 12.02 CW 模拟赛 T2.排列
    前言也是找到了韩国原题,有用!算法场上有一个比较显然的想法,即计算出每种逆序对数量对应多少排列,从而计算出排名第\(k\)小的排列有多少个逆序对但是即使计算出来了,我们也不好实现,分析原因发现,实际上是因为不好确定应该怎么填数,时间复杂度仍然趋势一个显然的想......
  • 牛客【“华为杯” 2024年广东工业大学新生赛(同步赛)】F-字符串缩写太多了!
    输入3aaaaabbba输出15输入5yanamiannaa输出325备注:对于样例:缩写a的方案有2种:aaa、aab。缩写b的方案有1种:bba。缩写aa的方案有2种:aaaaab、aabaaa。缩写ab的方案有2种:aaabba、aabbba。缩写ba的方案有2种:bbaaaa、bbaaab。缩写aab的方......
  • 2024-12-02:划分数组得到最小的值之和。用go语言,你有两个数组,nums 和 andValues,它们的
    2024-12-02:划分数组得到最小的值之和。用go语言,你有两个数组,nums和andValues,它们的长度分别为n和m。定义数组的“值”为其最后一个元素。你的任务是将nums划分为m个不重叠的连续子数组。对于第i个子数组[li,ri],该子数组的所有元素通过按位与运算后,结果必须等......
  • 20222425 2024-2025-1 《网络与系统攻防技术》实验七实验报告
    1.实验内容本周学习内容:本周我们学了web安全的章节,首先我们了解了前端和后端技术,其次我们学习了一些web安全攻防的内容,例如SQL注入和XSS跨站脚本攻击、CSRF以及安全防范的内容。在实验的过程中我们学到了网络欺诈与防范技术。2.实验过程主机IP:192.168.35.1kali(攻击机IP):192.168......