首页 新闻 会员 周边

关于java的参数的调用,还有布尔的理解,这有一段代码,我有些不太理解,希望能够帮我分析下,谢谢

0
悬赏园豆:10 [已关闭问题] 关闭于 2013-01-28 10:27

第一段代码

public class CustomerBiz {
String[] names=new String[30]; //创建学生姓名数组
//实现姓名的添加
public void addName(String name){
for(int i=0;i<names.length;i++){
if(names[i]==null){
names[i]=name;
break;
}
}
}
public void showName(){ //显示姓名
for(int i=0;i<names.length;i++){
if(names[i]!=null){
System.out.print(names[i]+" ");
}

}
}
}

 

第二段代码

import java.util.Scanner;
public class TestCustomer {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CustomerBiz n=new CustomerBiz(); //创建对象n,用于调用CustomerBiz
Scanner input=new Scanner(System.in);
boolean con=true; //定义con标志下一段程序是否继续运行
while(con){
System.out.println("请输入客户的姓名:");
String name=input.next();
n.addName(name);
System.out.println("继续输入吗?(y/n):");
String choice=input.next();
if(choice.equals("n")){
con=false;
break;
}
}
System.out.println("*****************************");
System.out.println("\t\t姓名列表:");
System.out.println("*****************************");
n.showName();
}

}

我对第一段代码的addName对方法对String name的调用不理解(究竟调用的是谁呢),而且是非常的不理解啊;对addName方法的for循环里的if的条件,和它的代码都不太理解,总之就是对这一方法不理解,为什么要那样用;对TestCustomer类里的布尔的用法不太懂,在结尾的if语句中为什么要将false赋值给con?不赋值不是也可以的吗.谢谢你的帮助,希望能够详细些好吗,我对java不太理解,谢谢

追逐,小天的主页 追逐,小天 | 初学一级 | 园豆:197
提问于:2013-01-26 16:23
< >
分享
所有回答(2)
0

你这样理解,开始不是有定义String[] names=new String[30];就是为了买东西提前做了30个袋子,然后就是那个addName方法,它主要用于使用这30个袋子,然而具体操作就在for 和 if语句中执行,for主要起到迭代的左右,现在面前有一大堆苹果,我用第一个袋子装,然后装满了怎么办,我们人类的行为就是换个袋子再去装,但是放在电脑中电脑会怎么处理,他会通过i++这个参数的累加来达到人们换袋子的行为,if主要是一个检验的操作,就是不能重复给装满苹果的袋子里继续装苹果

TestCustomer中的boolean con=true  这个你去参考下while循环那节类容,if 为什么将false赋值给con,这步必须得写,不然成了死循环了,你还是去参考while 那块的知识

如果有不懂加这个群:43530068

牛精神 | 园豆:215 (菜鸟二级) | 2013-01-27 12:18
0

public void addName(String name)里面的String name相当于声明了一个name变量,目的是if语句的应用,if语句是判断的这样一个问题:首先我们声明了一个30的数组,在使用的过程中。【if(names[i]==null)判断names数组的长度是否还有剩余即,在使用中可能需要第31个空间】那么,第三十一个就是name,就将name的值添加到names的数组里。

至于TestCustomer中的boolean con=true 我想应该是为了标志下一程序的运行,而至于,if 为什么将false赋值给con则是为了代码的规范,既然有了else那么他也就一定是fale了,或者是为了以后写代码还能够运用到的con,所以做得准备

追逐,小天 | 园豆:197 (初学一级) | 2013-01-28 10:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册