当前位置: 代码迷 >> Java相关 >> 求指导!写了两天了...
  详细解决方案

求指导!写了两天了...

热度:124   发布时间:2011-10-22 13:59:02.0
求指导!写了两天了...
import java.io.*;
import java.util.*;
import java.util.Scanner;

public class MyStringBuffer{

    public static void main(String[] args){
        Scanner s = new Scanner(System.in);
        Scanner m = new Scanner(System.in);
        String str1 = s.next();
        String str2 = s.next();
        
        if(equals(str1,str2))
                    System.out.println("stringbuffer1 equal to stringbuffer2");
            else
                System.out.println("stringbuffer1 not equal to stringbuffer2");
}
    public static boolean equals(StringBuffer sb1,StringBuffer sb2){
        boolean flag=false;
        String a=new String(sb1);
        String b=new String(sb2);
        if(a.equalsIgnoreCase(b)){
            return !flag;
            }
        else{
            return flag;
        }
    }
}

那位大侠能帮我改改吗?
搜索更多相关的解决方案: public  equals  import  class  

----------------解决方案--------------------------------------------------------
提示: 作者被禁止或删除 内容自动屏蔽
2011-10-22 07:03:15
shuangwhywhy

等 级:新手上路
帖 子:5
专家分:0
注 册:2011-11-2
  得分:0 
看你这程序写的……去掉没用的语句,整个程序就这么几行:

import java.util.Scanner;

public class MyStringBuffer {
    public static void main (String[] args) {
        Scanner s = new Scanner(System.in);
        String str1 = s.next();
        String str2 = s.next();
        
        if (str1.equalsIgnoreCase(str2))
            System.out.println("stringbuffer1 equals to stringbuffer2");
        else
            System.out.println("stringbuffer1 does not equal to stringbuffer2");
    }
}

给你的意见:
1)多余的语句一句都不要写
2)缩进什么的都对齐了
3)学会写注释
----------------解决方案--------------------------------------------------------
回复 楼主 williamweng
再给你压缩一下:

import java.util.Scanner;

public class MyStringBuffer {
    public static void main (String[] args) {
        Scanner s = new Scanner(System.in);
        
        if (s.next().equalsIgnoreCase(s.next()))
            System.out.println("stringbuffer1 equals to stringbuffer2");
        else
            System.out.println("stringbuffer1 does not equal to stringbuffer2");
    }
}

再压缩一下:

import java.util.Scanner;

public class MyStringBuffer {
    public static void main (String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println((s.next().equalsIgnoreCase(s.next()) ? "stringbuffer1 equals to stringbuffer2" : "stringbuffer1 does not equal to stringbuffer2");
    }
}

你的 26 行代码,实质上 = 我的 7 行代码

[ 本帖最后由 shuangwhywhy 于 2011-11-2 09:27 编辑 ]
----------------解决方案--------------------------------------------------------
  相关解决方案