帮看下java代码错在哪
来源:百度知道 编辑:UC知道 时间:2024/06/03 22:58:15
class MyString
{
private char str[]=new char[10];//定义字符数组
public void setStr(char[] i_str)
{
System.arraycopy(i_str,0,str,0,i_str.length); //复制数组
}
public char[] getStr(){return str;} //返回数组
}
class Changer
{
public void changerObj (MyString obj)
{
char i_str[]={'H','E','L','L','O',' ',' ',' ',' '}; //定义字符数组
obj.setStr(i_str); //将数组传入类对象的方法中
}
}
public class CallByReference2
{
public static void main(String args[])
{
char i_str[]={'M','y',' ','S','t','r','i','n','g'}; //定义字符数组
MyString AString=new MyString(); //定义一MyString类对象
Changer AChanger=new Changer(); //定义一Changer类对象
AString.setStr(i_str); //将数组传入对象
System.out.println(AString.getStr()); //输出数组返回值
AChanger.ch
{
private char str[]=new char[10];//定义字符数组
public void setStr(char[] i_str)
{
System.arraycopy(i_str,0,str,0,i_str.length); //复制数组
}
public char[] getStr(){return str;} //返回数组
}
class Changer
{
public void changerObj (MyString obj)
{
char i_str[]={'H','E','L','L','O',' ',' ',' ',' '}; //定义字符数组
obj.setStr(i_str); //将数组传入类对象的方法中
}
}
public class CallByReference2
{
public static void main(String args[])
{
char i_str[]={'M','y',' ','S','t','r','i','n','g'}; //定义字符数组
MyString AString=new MyString(); //定义一MyString类对象
Changer AChanger=new Changer(); //定义一Changer类对象
AString.setStr(i_str); //将数组传入对象
System.out.println(AString.getStr()); //输出数组返回值
AChanger.ch
AChanger.changeObj (AString);
应该是AChanger.changerObj (AString);
第35行应该是:
AChanger.changerObj (AString); //将对象传入方法
你打错字喽~
运行结果:
My String
HELLO
AChanger.changerObj (AString);
AChanger.changeObj (AString);
你打错字了......
AChanger.changeObj (AString); //将对象传入方法 这里写错了少了一个r
应该写成这样就对了。AChanger.changerObj (AString);其他都没问题。