java 部分:
(B)
A、 good and abc
B、 good and gbc
C、 test ok and abc
D、 test ok and gbc
package com.nari;
public class Example {
String str = new String("good");
char[] ch = { 'a', 'b', 'c' };
public static void main(String[] args) {
Example ex = new Example();
ex.change(ex.str, ex.ch);
System.out.print(ex.str + " and ");
System.out.print(ex.ch);
}
public void change(String str, char ch[]) {
str = "test ok";
ch[0] = 'g';
}
}

运行结果:

分析:String 和 char[ ] 数组都是引用数据类型 ,按照正常情况这两个内容都会发生改变。但String类是用final修饰的,根据final的特点,final的修饰的是不能改变的。
c++ 部分:
代码:
#include<iostream>
using namespace std;
int fun(int n,int a,int b)
{
int c;
if(n==0) return b;
c=b;
b+=a;
a=c;
return b+fun(n-1,a,b)-b;
}
int main()
{
int n,a=1,b=1,i;
cin>>n;
cout<<'1'<<' '<<'1'<<' ';
if(n<3) ;
else for(i=1;i<=n-2;i++)
{
cout<<fun(i,a,b)<<' ';
}
return 0;
}
运行结果 :

本文通过Java中String和char数组的实例,以及C++递归函数的解析,探讨了不同数据类型的特性及引用类型在两种语言中的行为差异。深入分析了final关键字在Java中的作用,并解释了C++递归函数的执行逻辑。
1万+

被折叠的 条评论
为什么被折叠?



