Метод Contains() в Java
Java String contains()- метод чтобы проверить, содержит ли String указанную последовательность символов. Этот метод возвращает логический тип данных, который является результатом тестирования, если строка содержит символы, указанные в аргументе метода в типе объекта CharSequence. Метод contains() возвращает true тогда и только тогда, когда эта строка содержит указанную последовательность значений char.
Синтаксис:
public boolean contains(CharSequence sequence)
Пример
class TestClass < public static void main (String[] args)< String str = "twinkle twinkle little star"; boolean got = str.contains("little"); System.out.println("String contains 'little' : " + got); got = str.contains("Java"); System.out.println("String contains 'Java' : " + got); >>
Вывод:
String contains 'little' : true String contains 'Java' : false
Строка hashCode()
На языке программирования Java каждый класс неявно или явно предоставляет метод hashCode(), который переваривает данные, хранящиеся в экземпляре класса, в одно значение хэша (32-разрядное целое число со знаком). Значение String hashCode строки Java вычисляется как:
Преимущества ::
- Это быстро, в той мере, в которой он, вероятно, создает хеши, поскольку ЦП может считывать строку из памяти (т. Е. Вы обычно не можете улучшиться, не пропуская большие части строки). В String используется только одно умножение и одно добавление для каждого символа.
- Для типичных наборов случайных строк он создает хорошо распределенные хэши по всему диапазону int.
Важно отметить, что это не криптографическая хэш-функция, ее единственное обязательство — подчиняться контракту, определенному Java.lang.Object, поэтому не используйте его для этого. Кроме того, имейте в виду, что вы, скорее всего, столкнетесь с хэш-коллизиями, поскольку он создает 32-битный хеш. Поэтому вам просто нужно разработать свои алгоритмы, чтобы учесть это.
Пример
class TestClass < public static void main (String[] args)< String str = new String("Java String Tutorial"); System.out.println("Hashcode is :" + str.hashCode() ); >>
Вывод:
Hashcode is :-188391249
String. Contains Метод
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
Возвращает значение, указывающее, встречается ли указанный символ внутри этой строки.
Возвращает значение, указывающее, встречается ли указанная подстрока внутри этой строки.
Возвращает значение, указывающее, встречается ли указанный символ внутри этой строки, используя указанные правила сравнения.
Возвращает значение, указывающее, встречается ли указанная строка внутри этой строки, используя указанные правила сравнения.
Contains(Char)
Возвращает значение, указывающее, встречается ли указанный символ внутри этой строки.
public: bool Contains(char value);
public bool Contains (char value);
member this.Contains : char -> bool
Public Function Contains (value As Char) As Boolean
Параметры
Символ для поиска.
Возвращаемое значение
Значение true , если параметр value выполняется внутри этой строки; в противном случае — значение false .
Комментарии
Этот метод выполняет порядковый номер (с учетом регистра и без учета языка и региональных параметров).
Применяется к
Contains(String)
Возвращает значение, указывающее, встречается ли указанная подстрока внутри этой строки.
public: bool Contains(System::String ^ value);
public bool Contains (string value);
member this.Contains : string -> bool
Public Function Contains (value As String) As Boolean
Параметры
Строка для поиска.
Возвращаемое значение
true , если параметр value встречается в строке или value является пустой строкой («»); в противном случае — false .
Исключения
value имеет значение null .
Примеры
В следующем примере определяется, является ли строка fox подстрокой знакомой кавычки. Если в строке найдена «fox», она также отображает ее начальную позицию.
using namespace System; int main() < String^ s1 = "The quick brown fox jumps over the lazy dog"; String^ s2 = "fox"; bool b = s1->Contains( s2 ); Console::WriteLine( "Is the string, s2, in the string, s1?: ", b ); if (b) < int index = s1->IndexOf(s2); if (index >= 0) Console::WriteLine("' begins at character position ", s2, index + 1); > > // This example displays the following output: // 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True // 'fox begins at character position 17
string s1 = "The quick brown fox jumps over the lazy dog"; string s2 = "fox"; bool b = s1.Contains(s2); Console.WriteLine("'' is in the string '': ", s2, s1, b); if (b) < int index = s1.IndexOf(s2); if (index >= 0) Console.WriteLine("' begins at character position ", s2, index + 1); > // This example displays the following output: // 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True // 'fox begins at character position 17
let s1 = "The quick brown fox jumps over the lazy dog" let s2 = "fox" let b = s1.Contains s2 printfn $"'' is in the string '': " if b then let index = s1.IndexOf s2 if index >= 0 then printfn $"' begins at character position " // This example displays the following output: // 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True // 'fox begins at character position 17
Class Example Public Shared Sub Main() Dim s1 As String = "The quick brown fox jumps over the lazy dog" Dim s2 As String = "fox" Dim b As Boolean = s1.Contains(s2) Console.WriteLine("'' is in the string '': ", s2, s1, b) If b Then Dim index As Integer = s1.IndexOf(s2) If index >= 0 Then Console.WriteLine("' begins at character position ", s2, index + 1) End If End If End Sub End Class ' ' This example displays the following output: ' 'fox' is in the string 'The quick brown fox jumps over the lazy dog': True ' 'fox begins at character position 17
Комментарии
Этот метод выполняет порядковый номер (с учетом регистра и без учета языка и региональных параметров). Поиск начинается с первой позиции символа этой строки и продолжается до последней позиции символа.
Чтобы выполнить сравнение с учетом языка и региональных параметров или порядкового номера без учета регистра:
- В .NET Core 2.1 и более поздних версиях: вместо этого вызовите перегрузку Contains(String, StringComparison) .
- На платформа .NET Framework: создайте пользовательский метод. В следующем примере показан один из таких подходов. Он определяет String метод расширения, который включает StringComparison параметр и указывает, содержит ли строка подстроку при использовании указанной формы сравнения строк.
using System; public static class StringExtensions < public static bool Contains(this String str, String substring, StringComparison comp) < if (substring == null) throw new ArgumentNullException("substring", "substring cannot be null."); else if (! Enum.IsDefined(typeof(StringComparison), comp)) throw new ArgumentException("comp is not a member of StringComparison", "comp"); return str.IndexOf(substring, comp) >= 0; > >
open System open System.Runtime.CompilerServices [] type StringExtensions = [] static member Contains(str: string, substring, comp: StringComparison) = if substring = null then invalidArg "substring" "substring cannot be null" if Enum.IsDefined(typeof, comp) |> not then invalidArg "comp" "comp is not a member of StringComparison" str.IndexOf(substring, comp) >= 0
String s = "This is a string."; String sub1 = "this"; Console.WriteLine("Does '' contain ''?", s, sub1); StringComparison comp = StringComparison.Ordinal; Console.WriteLine(" : ", comp, s.Contains(sub1, comp)); comp = StringComparison.OrdinalIgnoreCase; Console.WriteLine(" : ", comp, s.Contains(sub1, comp)); // The example displays the following output: // Does 'This is a string.' contain 'this'? // Ordinal: False // OrdinalIgnoreCase: True
let s = "This is a string." let sub1 = "this" printfn $"Does '' contain ''?" let comp = StringComparison.Ordinal printfn $" : " let comp2 = StringComparison.OrdinalIgnoreCase printfn $" : " // The example displays the following output: // Does 'This is a string.' contain 'this'? // Ordinal: False // OrdinalIgnoreCase: True
Imports System.Runtime.CompilerServices Module StringExtensions Public Function Contains(str As String, substring As String, comp As StringComparison) As Boolean If substring Is Nothing Then Throw New ArgumentNullException("substring", "substring cannot be null.") Else If Not [Enum].IsDefined(GetType(StringComparison), comp) Throw New ArgumentException("comp is not a member of StringComparison", "comp") End If Return str.IndexOf(substring, comp) >= 0 End Function End Module
Public Module Example Public Sub Main Dim s As String = "This is a string." Dim sub1 As String = "this" Console.WriteLine("Does '' contain ''?", s, sub1) Dim comp As StringComparison = StringComparison.Ordinal Console.WriteLine(" : ", comp, s.Contains(sub1, comp)) comp = StringComparison.OrdinalIgnoreCase Console.WriteLine(" : ", comp, s.Contains(sub1, comp)) End Sub End Module ' The example displays the following output: ' Does 'This is a string.' contain 'this'? ' Ordinal: False ' OrdinalIgnoreCase: True
Если вас интересует позиция подстроки value в текущем экземпляре, можно вызвать IndexOf метод , чтобы получить начальную позицию первого вхождения, или метод LastIndexOf , чтобы получить начальную позицию последнего вхождения. Пример включает вызов метода , IndexOf(String) если подстрока найдена в экземпляре строки.
См. также раздел
- IndexOf(Char)
- LastIndexOf(String)
20) Строка содержит () метод
Метод contains () – это метод Java, позволяющий проверить, содержит ли String другую подстроку или нет. Возвращает логическое значение, поэтому его можно использовать непосредственно внутри операторов if.
Синтаксис строкового метода “Container”
public boolean String.contains(CharSequence s)
параметры
s – это последовательность поиска
Возвращаемое значение
Этот метод возвращает true, только если эта строка содержит «s», иначе false.
исключение
NullPointerException – если значение s является нулем.
Пример 1:
public class Sample_String < public static void main(String[] args) < String str_Sample = "This is a String contains Example"; //Check if String contains a sequence System.out.println("Contains sequence 'ing': " + str_Sample.contains("ing")); System.out.println("Contains sequence 'Example': " + str_Sample.contains("Example")); //String contains method is case sensitive System.out.println("Contains sequence 'example': " + str_Sample.contains("example")); System.out.println("Contains sequence 'is String': " + str_Sample.contains("is String")); >>
Выход :
Содержит последовательность «ing»: true
Содержит последовательность «Example»: true
Содержит последовательность «example»: false
Содержит последовательность «is String»: false
Когда использовать метод Contains ()?
Это распространенный случай в программировании, когда вы хотите проверить, содержит ли конкретная строка определенную подстроку. Например, если вы хотите проверить, содержит ли строка «Большая красная лиса» подстроку «красный». Этот метод полезен в такой ситуации.
Пример 2: Java String содержит метод () в цикле if else
public class IfExample < public static void main(String args[]) < String str1 = "Java string contains If else Example"; // In If-else statements you can use the contains() method if (str1.contains("example")) < System.out.println("The Keyword :example: is found in given string"); >else < System.out.println("The Keyword :example: is not found in the string"); >> >
Вывод:
Ключевое слово: пример: не найдено в строке
Как работат метод contains в js?
Метод node.contains(otherNode) проверяет является ли переданный в него узел потомком данного узла. Возвращает true или false. Стоит обратить внимание, что если передать в метод тот же элемент на котором метод был вызван то contains вернёт true.
// создаём 3 элемента const section = document.createElement('section'); const div = document.createElement('div'); const p = document.createElement('p'); // создаём иерархию в которой p является дочерним элементом div, а div дочерним элементом section div.append(p); section.append(div); // элемент div является дочерним элементом (прямым потомком) section console.log(section.contains(div))// true // элемент p является потомком section console.log(section.contains(p))// true // если передать в метод section, то результат также будет true console.log(section.contains(container))// true // создадим элемент, который не встроен в иерархию выше и проверим его const span = document.createElement('span'); console.log(section.contains(span))// false