zoukankan      html  css  js  c++  java
  • Java区分大小写字母数字和符号

    java如何区分如题的四种东西呢?首先我想到的是利用ASCII码,因为不同的符号的ASCII码是不一样的。而要利用ASCII码区分的话,至少要知道A,Z,a,z,0,9的ASCII码,这样就可以利用ASCII码来区分了。

    这是第一种方法。

     1 package test;
     2 import java.util.Scanner;
     3 public class Differentiate{
     4     public static void main(String[] args){
     5         // A-65,Z-90,a-97,z-122,0-48,9-57
     6         Scanner sc = new Scanner(System.in);
     7         String nextLine = sc.nextLine();
     8         char[] charArray = nextLine.toCharArray();
     9         for(int i = 0;i<charArray.length;i++){
    10             int charAscii = (int)charArray[i];
    11             if(charAscii >=65 && charAscii <=90){
    12                 System.out.print("大写字母:");
    13                 System.out.println(charArray[i]);
    14             }else if(charAscii >=97 && charAscii <=122){
    15                 System.out.print("小写字母:");
    16                 System.out.println(charArray[i]);
    17             }else if(charAscii >= 48 && charAscii <= 57){
    18                 System.out.print("数字:");
    19                 System.out.println(charArray[i]);
    20             }else{
    21                 System.out.print("符号:");
    22                 System.out.println(charArray[i]);
    23             }
    24         }
    25     }
    26 }

    第二种方法,在网上查资料查到的,貌似在java里面对A-Z,a-z,0-9的char字符都有排序的,所以可以直接比较。

     1 package test;
     2 
     3 import java.util.Scanner;
     4 
     5 public class Differentiate{
     6     public static void main(String[] args) {
     7         Scanner sc = new Scanner(System.in);
     8         String nextLine = sc.nextLine();
     9         for (int i = 0; i < nextLine.length(); i++) {
    10             char c = nextLine.charAt(i);
    11             if (c >= 'A' && c <= 'Z') {
    12                 System.out.print("max ");
    13                 System.out.println(c);
    14             } else if (c >= 'a' && c <= 'z') {
    15                 System.out.print("min ");
    16                 System.out.println(c);
    17             } else if (c >= '0' && c <= '9') {
    18                 System.out.print("数字 ");
    19                 System.out.println(c);
    20             } else {
    21                 System.out.print("符号");
    22                 System.out.println(c);
    23             }
    24         }
    25     }
    26 }

    还有一种方法,利用indexOf()函数,如果某个字符在字符串里面不存在,就会返回-1,所以只需要先做出A-Z,a-z,0-9三个字符串,然后每次用这三个字符串判断就行了

     1 package test;
     2 
     3 import java.util.Scanner;
     4 
     5 public class Differentiate{
    6 public static void main(String[] args) { 7 Scanner sc = new Scanner(System.in); 8 String nextLine = sc.nextLine(); 9 String upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 10 String lower = "abcdefghijklmnopqrstuvwxyz"; 11 String num = "0123456789"; 12 char[] charArray = nextLine.toCharArray(); 13 for(int i = 0;i<charArray.length;i++){ 14 if(upper.indexOf(charArray[i]) != -1){ 15 System.out.print("大写字母:"); 16 System.out.println(charArray[i]); 17 }else if(lower.indexOf(charArray[i]) != -1){ 18 System.out.print("小写字母:"); 19 System.out.println(charArray[i]); 20 }else if(num.indexOf(charArray[i]) != -1){ 21 System.out.print("数字:"); 22 System.out.println(charArray[i]); 23 }else{ 24 System.out.print("符号:"); 25 System.out.println(charArray[i]); 26 } 27 } 28 } 29 }
  • 相关阅读:
    UVa OJ 102 Ecological Bin Packing (生态学装箱问题)
    最小生成树 zoj1586 QS Network
    最小生成树&并查集 POJ 1861 Network
    最小生成树&并查集POJ 1287 Networking
    2012年亚洲长春区域赛:K Yukari's Birthday
    最小生成树 ZOJ 1203 Swordfish
    HDU 2639 Bone Collector II
    POJ2528 Mayor's posters(区间替换&&线段切割)
    POJ2777 Count Color(区间修改&&懒惰标记&&位运算)
    (转)有关如何入门ACM
  • 原文地址:https://www.cnblogs.com/Xw-liang/p/5223908.html
Copyright © 2011-2022 走看看