java基础阶段关于密码或账号字符数字的判断总结

将字符串转成字符数组

首字母判断

思路:应该如何获取首字母

arr[0]为数组第一个元素即是首字母

数字判断true为数字false为非数字

"0123456789".contains(arr[0]+"");

字母判断其中一个成立即为字母

(arr[0]>='z'&&arr[0]<='a')||(arr[0]>='Z'&&arr[0]<='A')

其它索引位置的判断只需遍历数组即可

注意:写这种代码时应该一个判断写完验证一个判断,所有判读都写完后,将他们按逻辑连接起来即可

/*编写一个校验用户名的程序,检测键盘录入的用户名是否合法
要求:用户名必须是6-10位之间的字母并且不能以数字开头*/
    public class Demo20 {
    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入账号");
    String str = sc.nextLine();
    char[] arr = str.toCharArray();
    boolean b = "0123456789".contains(arr[0] + "");
      if (b) {
          System.out.println("不能以数字开头");
       } else {

          // 判断长度
          if (!(arr.length >= 6 && arr.length <= 10)) {
            System.out.println("输入长度有误");
          } else {
          // 判断是不是字母
          for (char c : arr) {
            if (!((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))) {
            System.out.println("请输入字母");
             return;
            }
          }
        System.out.println("登录成功");
      }
    }
  }
}

posted on 2016-06-24 21:01  知了不了了之  阅读(468)  评论(0编辑  收藏  举报