小编mxy*_*xyz的帖子

jTextField只接受字母和空格

如果用户输入其他字符,我希望用户只输入字母或空白区域,我想用jOptionPane给出消息我已经搜索过,我试过下面的代码

if (!(Pattern.matches("^[a-zA-Z]+$", answerField1.getText())))
        JOptionPane.showMessageDialog(null, "Please enter a valid character", "Error", JOptionPane.ERROR_MESSAGE);
Run Code Online (Sandbox Code Playgroud)

但现在无论我输入它都会给出错误

现在我改变了代码

Pattern letterPattern = Pattern.compile("^[a-zA-Z]+$");

if (!(letterPattern.matcher(answerField1.getText()).matches()))
      {
    JOptionPane.showMessageDialog(null, "Please enter a valid character", "Error", JOptionPane.ERROR_MESSAGE);
}
Run Code Online (Sandbox Code Playgroud)

现在它只给消息第一次用户输入号码.我怎么能解决这个问题

java swing filter jtextfield

2
推荐指数
1
解决办法
2万
查看次数

Big-O表示法的函数时间复杂度?

1)Althoug我研究了大O符号我无法理解我们如何根据Big-O符号计算该函数的时间复杂度.你能详细解释一下吗?

2)用于递归函数; 为什么我们在使用递归函数时调用len-2?

bool isPalindrome( char *s, int len) {
             if (len <= 1) {
             return true;
        }
             else
            return ((s[0] == s[len-1]) && isPalindrome(s+1,len-2));
        }
Run Code Online (Sandbox Code Playgroud)

这个函数在Big-O表示法方面的时间复杂度是多少?

T(0) = 1 // base case
T(1) = 1 // base case
T(n) = 1 + T(n-2)// general case
T(n-2)=1+T(n-4)
T(n) = 2 + T(n-4)
T(n) = 3 + T(n-6)
T(n) = k + T(n-2k) ... n-2k = 1  k= (n-1)/2
T(n) = (n-1)/2 + T(1)  O(n)
Run Code Online (Sandbox Code Playgroud)

c++ algorithm

0
推荐指数
1
解决办法
794
查看次数

结构内部的结构

我有结构

struct Course{
  int cId;
  string courseName;
};
Run Code Online (Sandbox Code Playgroud)

我想为每门课程添加学生.我想在结构化课程中定义另一个结构

struct Course{
      int cId;
      string courseName;
      struct Student{
         int sId;
         string studentName;
      };
    };
Run Code Online (Sandbox Code Playgroud)

如果我像这样定义struct我怎么能用呢?我有Course * cptr = new Course[1]; 使用结构课程.我怎样才能将学生添加到指定的cId?

c++ arrays struct

0
推荐指数
1
解决办法
187
查看次数

标签 统计

c++ ×2

algorithm ×1

arrays ×1

filter ×1

java ×1

jtextfield ×1

struct ×1

swing ×1