有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

比较两个字符串的java字谜程序

我正在创建一个字谜程序,它比较两个字符串,不确定如何创建一个布尔值,如果两个单词中都出现一个字符,该布尔值将返回true

我的代码如下:

StringBuffer strbuff1 = new StringBuffer(""); 

private StringBuffer strbuff2 = new StringBuffer(""); 

public Anagram (String s1, String s2) {

    s1 = strbuff1.toString();
    s2 = strbuff2.toString();

     } 

public boolean contains(char chart1) {
        return true;        //what do I put here? 
    }

}

共 (2) 个答案

  1. # 1 楼答案

    这会给你你所需要的

    public boolean contains(char chart1) {
        return stringOne.contains(Character.toString(chart1)) &&
            stringTwo.contains(Character.toString(chart1));
    }
    

    如果提供的字符包含在两个字符串中,则返回true,否则返回false

  2. # 2 楼答案

    因此,您应该能够使用StringBuffer方法indexOf。请在此处查看api文档:http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuffer.html#indexOf(java.lang.String)

    比如:

    public boolean contains(char chart1) {
        if(strbuff1.indexOf(chart1) >= 0 && strbuff2.indexOf(chart1) >= 0) {
           return true;  
        }
        return false;      
    }
    

    然而,我也认为构造函数的变量赋值可能是向后的

    您可能需要strbuff1 = new StringBuffer(s1);

    这将使用给定字符串对象的内容创建一个新的StringBuffer

    祝你好运

    *编辑以包含两个单词的检查