I need to add a custom method on java.lang.String class
I am looking for a java equivalent to the C# extension methods feature.
...is there any language feature that will allow me to write an extension method for a final class ?
my code in c#:
public static string GetLang(this string value, bool isSplited = false, LanguageType? languageType = null)
{
if (String.IsNullOrWhiteSpace(value))
return null;
var language = (languageType ?? LanguageProvider.Language).ToString().ToLower();
if (isSplited)
{
var items = new List<string>();
foreach (var item in value.Split('|'))
{
var multiLang = JsonConvert.DeserializeObject<Dictionary<string, string>>(item);
if (multiLang.TryGetValue(language, out string textValue))
{
items.Add(textValue);
}
else
{
items.Add($"[{language}]");
}
}
return string.Join(" ", items);
}
else
{
var multiLang = JsonConvert.DeserializeObject<Dictionary<string, string>>(value);
if (multiLang.TryGetValue(language, out string textValue))
{
return textValue;
}
else
{
return $"[{language}]";
}
}
}
i want use this similar feature in Java