java如何比较字符内容是否相同

不是equals(),顺序不等也算相等,只要元素内容一样就行,比如adc=cba为true。求完整代码,谢谢。... 不是equals(),顺序不等也算相等,只要元素内容一样就行,比如adc=cba为true。求完整代码,谢谢。 展开
 我来答
godfather1103
2015-10-11 · TA获得超过3421个赞
知道大有可为答主
回答量:4501
采纳率:66%
帮助的人:1770万
展开全部
/*

最笨的方法,依次遍历比较
*/
import java.util.Scanner;
public class strcompare{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = null;
String b = null;
while(true){
System.out.println("please input two String:");
a = sc.next();
b = sc.next();
if(cmp(a,b)){
System.out.println("same");
}else{
System.out.println("No same");
}
}
}
public static boolean cmp(String a,String b){
boolean flag = false;
if (a.length()!=b.length()) {
flag = false;
}else{
char [] strA = a.toCharArray();
char [] strB = b.toCharArray();
int lenB = strB.length;
for (int i=0; i<strA.length; i++) {
for (int j = 0; j < strB.length; j++) {
if(strA[i]==strB[j])
{
strB[j] = ' ';
lenB--;
break;
}
}
}

if(lenB==0)
flag = true;
else
flag = false;
}
return flag;
}
}
百度网友fb85f7b
推荐于2016-07-04 · TA获得超过240个赞
知道小有建树答主
回答量:106
采纳率:100%
帮助的人:75.7万
展开全部
import java.util.Arrays;

public class Main {

String sortString(String str) {

char[] chs = str.toCharArray();
Arrays.sort(chs);
return new String(chs);

}
public static void main(String[] args) {
String strA = new String("abcd");
String strB = new String("dcba");

Main test = new Main();
if (test.sortString(strA).equals(test.sortString(strB))) {
System.out.println(strA+"与"+strB+"内容相同。");
}else {
System.out.println(strA+"与"+strB+"内容不相同。");
}

}
}

// 望采纳,谢谢

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随风的鱼儿漂流
推荐于2018-05-15 · TA获得超过617个赞
知道小有建树答主
回答量:123
采纳率:75%
帮助的人:59万
展开全部
代码如下(笨方法遍历做的):
public static boolean compareString(String src,String dec){
int srcLength = src.length();
int decLength = dec.length();
//相同的字符数目
int countSimilar = 0;
if(srcLength!=decLength)return false;
for(int i = 0;i<srcLength; i++){
for(int j = 0;j<srcLength; j++){
if(src.charAt(i)==dec.charAt(j)&&(getCountTimes(src,src.charAt(i))==getCountTimes(dec,dec.charAt(j)))){
countSimilar++;
break;
}
}
}
if(countSimilar==srcLength)return true;
return false;
}
//获取字符串中特定字符出现的次数
public static int getCountTimes(String str,char ch){
int countTimes = 0;
for(int i = 0;i<str.length(); i++){
if(ch==str.charAt(i))countTimes++;
}
return countTimes;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式