【问题标题】:Calling a method with parameters in another method在另一个方法中调用带有参数的方法
【发布时间】:2023-03-24 08:52:01
【问题描述】:

如何调用在另一个方法中有参数的方法?


    public class StackOverflow {
        static String blackListInput = "*[]#$";

        public static boolean isBlackList(String val) {
            if (val == null) {
                return false;
            }
            for (int i = 0; i < val.length(); i++) {
                if (blackListInput.indexOf(val.charAt(i)) < 0) {
                    return true;
                }
            }
            return false;
        }
        public static boolean cleanseInput() {
            if (isBlackList(val))
                return true;
            return false;
        }
    }


【问题讨论】:

  • 请解决您的问题
  • 无论您尝试过什么,请在这里分享您的代码。我们无法理解您的实际问题
  • 我已经创建了 isblacklist 方法,但我不确定如何在 cleanseinput 方法中调用它。我目前正在这样做: public static boolean cleanseinput() if (isBlackList(val)) return ture; } 否则 { 返回假; }
  • 在这里分享你的代码以及如何调用你的方法
  • 请查看添加的图片来提问。谢谢你的帮助

标签: java methods parameters character


【解决方案1】:

试试这个



     public class StackOverflow {
            static String blackListInput = "*[]#$";
            static char c[] = {'*','[',']','#','$'};
            public static boolean isBlackList(String val) {
                if("".equals(val) || val == null) {
                    return false;
                }
                if(val.contains(Character.toString(c[0]))) {
                    return true;
                }
                if(val.contains(Character.toString(c[1]))) {
                    return true;
                }
                if(val.contains(Character.toString(c[2]))) {
                    return true;
                }
                if(val.contains(Character.toString(c[3]))) {
                    return true;
                }
                if(val.contains(Character.toString(c[4]))) {
                    return true;
                }
                return false;
            }

            public static boolean  cleanseInput(String val) {
                if(isBlackList(val))
                    return true;
                return false;
            }
            public static void main(String[] args) {
                boolean b = cleanseInput("*");
                System.out.println(b);
            }
        }


【讨论】:

  • 否则我们可以对所有字母使用正则表达式,在输入值中使用 *[]#$。我会尽快用正则表达式模式更新你。
【解决方案2】:

如果你想使用正则表达式模式


    import java.util.regex.Matcher;
    import java.util.regex.Pattern;

    public class RegexPattern {
        public static boolean isBlackList(String value) {
            String regex = "[a-zA-Z0-9\\-#\\*\\[\\]\\$\\s]{0,30}";
            Pattern p = Pattern.compile(regex);
            Matcher m = p.matcher(value);
            boolean b = m.matches();
            return b;
        }

        public static boolean  cleanseInput(String val) {
            if(isBlackList(val))
                return true;
            return false;
        }
        public static void main(String[] args) {
            boolean b = cleanseInput("fsa$assdhsahdfjfjkf");
            System.out.println(b);
        }
    }

【讨论】:

  • 它将允许您的问题中提到的所有字母和所需的特殊字符。像 *#[]$
猜你喜欢
  • 1970-01-01
  • 2015-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多