Строки являются неизменяемыми , что означает, что их содержимое не может измениться. Когда вы вызываете replace(this,that)
, вы получаете совершенно новую строку. Если вы хотите сохранить эту новую копию, вам нужно назначить ее переменной. Вы можете перезаписать старую ссылку (a la sentence = sentence.replace(this,that)
или новую ссылку, как показано ниже:
public class Test{
public static void main(String[] args) {
String sentence = "Define, Measure, Analyze, Design and Verify";
String replaced = sentence.replace("and", "");
System.out.println(replaced);
}
}
В качестве примечания обратите внимание, что я удалил проверку contains()
, так как это ненужный вызов здесь. Если он не содержит его, заменитель просто не сможет выполнить какие-либо замены. Вам нужно только, чтобы он содержал метод, если то, что вы заменяете, отличается от фактического условия, которое вы проверяете.
Согласно этой записи в блоге в блоге JetBrains, в ReSharper 8 будет один комментарий, который может отключить функцию изменения резкости в файле.
Это будет
// ReSharper disable All
Примечание: «Все» чувствительно к регистру, остальные - нет.
Следующее сработало для меня.
Используйте следующее для подавления предупреждений:
#region No Resharper
// All R# warnings are suppressed here
#endregion
Найл, вы можете нажать Ctrl + Shift + Alt + 8 kbd>, чтобы отключить анализ и выделения в текущем файле.
Вы можете добавить файл в список «Сгенерированный код» в меню настроек ReSharpers:
Options > CodeInspection > Generated Code
Вы также можете использовать SuppressMessageAttribute с ReSharper в качестве категории и All в качестве checkId на метод или класс, как показано ниже. Это более детально, чем отключение всего в файле, если вам нужен детальный контроль.
Протестировано с Visual Studio 2015 Update 3 и ReSharper Ultimate 10.0.2
[SuppressMessage("ReSharper", "All")]
private void MethodWithMultipleIssues()
{
TestClass instance = null;
// You would get an "Expression is always true" message
if (instance == null)
{
Debug.WriteLine("Handle null");
}
else
{
// You would get an "Code is unreachable" message
Debug.WriteLine("Handle instance");
}
}
Вы должны настроить ReSharper Inspections
http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Configuring_Warnings.html