String test = "http://[email protected]"; 这里是一个String类型的变量
public void fuction(String test) { 在方法声明中为什么是void没有返回值,为什么不是String 
我不知道怎么才能判断什么时候使用void
题如下
编写函数parseMailAddr,解析邮件地址,打印出protocol、username、domain name。 
    publc static void parseMailUrl(String mailUrl) 
例如:mailto://[email protected],打印输出: 
protocol[mailto] 
username[superman] 
domainName[giantstone.com] 
 
请各位帮帮忙 我刚入门 对一些东西还是比较模糊 请各位帮我把这个写完 我想看看完整的是什么样子的去理解,谢谢了~

解决方案 »

  1.   

    public void fuction(String test)
    首先要看你这个方法是用来干什么的,如果你这个方法是用来判断url是否合法,那么这个方法可以返回布尔类型 public boolean function(String test)
    如果你这个方法是用来把test这个String保存到数据库中的,而且不需要知道保存是否成功,那么就可以返回void, 这样一般情况下只有抛出异常才知道是否保存成功了。
      

  2.   

    你想通过这个方法进行处理一些数据,然后将处理过的数据进行返回,也就是你想得到这些经过
    处理的数据,你的方法就应该有返回值,如果你仅仅是在方法中进行一些操作,比如打印,
    那么这个方法的职责就是向控制台输出你想要的结果,输出以后这个方法的作用就完成了,也就
    不需要返回值了,所以就用void
      

  3.   


       public static void parseMailUrl(String mailUrl) {
            
             String protocol =    mailUrl.substring(0, mailUrl.indexOf(":"));
            
             String username =    mailUrl.substring(mailUrl.lastIndexOf("/")+1, mailUrl.indexOf("@"));
            
             String domainName =  mailUrl.substring(mailUrl.indexOf("@")+1, mailUrl.length()-1);
            
             System.out.println("protocol["+protocol+"]" );
            
             System.out.println("username["+username+"]");         System.out.println("domainName["+domainName+"]");
            
            }
      

  4.   

    需要什么返回就用什么,用void的时候实际上用其他的也可以
      

  5.   

    public class ParseString {
    private String str = "http://www.sina.com.cn/";
    public void parse(){
    String protocol = str.substring(0, str.indexOf(":"));
    String address = str.substring(str.indexOf("/")+2, str.lastIndexOf("/"));
    System.out.println("协议是:" + protocol);
    System.out.println("地址是:" + address);
    }
    public static void main(String[] args){
    ParseString ps = new ParseString();
    ps.parse();
    }
    }