Я мог бы использовать txt-файл или войти через класс Scanner (который, вероятно, буду использовать), но мне нужно сравнить строки и проверить, содержат ли они одни и те же символы. Если повторяющихся символов все равно будет, например, abc
и aaabbbccc
будет одинаковым.Проверьте, содержит ли пара строк одни и те же символы?
ответ
Вы могли бы сделать что-то вроде этого:
//just call the checkChars method with 2 strings and it will check both strings to make sure
//that all the characters are contained in both strings.
public static void main(String args[]) {
String test = "abc";
String test1 = "abcaaabbc";
System.out.println("" + checkChars(test, test1));
}
public static String checkChars(String string1, String string2)
{
boolean isContained = false;
char[] char1 = string1.toCharArray();
char[] char2 = string2.toCharArray();
for(int i = 0; i < char1.length; i++)
{
isContained = false;
for(int j = 0; j < char2.length; j++)
{
if(char1[i] == char2[j])
{
isContained = true;
break;
}
}
if(isContained == false)
{
break;
}
}
if(isContained == true)
{
for(int i = 0; i < char2.length; i++)
{
isContained = false;
for(int j = 0; j < char1.length; j++)
{
if(char2[i] == char1[j])
{
isContained = true;
break;
}
}
if(isContained == false)
{
break;
}
}
}
if(isContained)
{
return "Both strings contain the same characters.";
}
else
{
return "The strings have different characters.";
}
}
Вы можете использовать метод checkChars для сравнения 2 строки для одних и тех же символов.
Я назвал это в своем основном методе, но я хочу вернуть что-то вроде «Обе строки одинаковы», а не просто true или false, мне нужно установить тип возвращаемого значения как String? – user3247712
Да, я отредактирую, чтобы вы могли увидеть, как это сделать ... – brso05
@ user3247712 вот ты и я редактировал его, чтобы вернуть строковое сообщение ... – brso05
Поскольку вас не беспокоит количество символов, ваша проблема намного проще, чем более обычный вопрос: anagrams. Как комментарий примечания Pshemo, используйте Set
S:
boolean hasSameChars(String s, String t) {
Set<Character> sChars = new HashSet<Character>(Chars.asList(s.toCharArray());
Set<Character> tChars = new HashSet<Character>(Chars.asList(t.toCharArray());
return sChars.equals(tChars);
}
Если вы хотите проверить, если количество символов также одинаково в обеих строках, а затем использовать Map<String, Integer>
или Multiset<String>
следить за подсчеты.
Чтобы сделать ответ кратким, я использовал Guava, но идея явно не зависит от методов Guava.
С быстрый поиск по переполнению стека, я получил это Удалить дубликаты символов -> сортировки -> проверить, если они такие же
государственной статической силы основных (String [] арг) {
String s1 = "abc";
String s2 = "aaabbbccc";
System.out.println(check(dupRemove(s1), dupRemove(s2)));
}
static boolean check(String a, String b){
char[] c1 = a.toCharArray();
char[] c2 = b.toCharArray();
Arrays.sort(c1);
Arrays.sort(c2);
return Arrays.equals(c1, c2);
}
static String dupRemove(String s){
StringBuilder clean = new StringBuilder();
for (int i = 0; i<s.length(); i++){
String j = s.substring(i, i + 1);
if(clean.indexOf(j)==-1){
clean.append(j);
}
}
return clean.toString();
}
- 1. Проверьте, содержат ли списки одни и те же объекты
- 2. Определение того, содержит ли список одни и те же данные?
- 3. Как выбрать одни и те же столбцы из всех строк?
- 4. Почему мой массив содержит одни и те же элементы?
- 5. заменить одни и те же символы с разными строками
- 6. PHP preg_split, разделенный на одни и те же символы
- 7. Parallel.For петли одни и те же элементы
- 8. два раза одни и те же 6 строк кода
- 9. Как проверить строки содержит одни и те же символы в scala?
- 10. Делает ли http и https одни и те же сеансы
- 11. Проверьте, есть ли у двух аррайалистов одни и те же элементы
- 12. В Vim, как эффективно вставлять одни и те же символы в несколько строк?
- 13. Можно ли иметь несколько потоков, которые записывают одни и те же значения в одни и те же переменные?
- 14. Имеют ли экземпляры одни и те же услуги? - SQL Server
- 15. Можно ли вставлять одни и те же значения сразу (Mysql)?
- 16. всегда одни и те же случайные числа в HashSet
- 17. Унификация линии, которые содержат одни и те же шаблоны
- 18. Проверьте IF, что одна строка содержит те же символы, что и другая строка
- 19. Несколько приложений, получающих одни и те же данные
- 20. Вероятность того, что строки имеют одни и те же позиции
- 21. Проверьте, содержит ли TStringList определенные символы?
- 22. Проверьте, содержат ли два одиночных связанных списка одни и те же данные
- 23. Проверьте, не содержит ли строка только символы и символы подчеркивания
- 24. Можно ли предположить, что RecyclerView.ViewHolder всегда содержит одни и те же элементы?
- 25. Самый быстрый способ проверить, содержит ли массив одни и те же объекты другого массива.
- 26. Несколько приложений, использующих одни и те же сервисы приложений
- 27. Главный домен и поддомены, используя одни и те же файлы
- 28. PostgreSQL обрабатывать одни и те же значения, как различные
- 29. vstest.console.exe бежит одни и те же тесты несколько раз
- 30. Проверьте, содержит ли строка только заданные символы
только те же символы или может abc = aabbbcccdddeee? – brso05
Поместите символы из обеих строк, чтобы отделить 'Set' и сравнить их содержимое. –
Pshemo
только те же символы. abc = aaabbbcccddee будет считаться другим. – user3247712