zoukankan      html  css  js  c++  java
  • java11-5 String类的转换功能


    String的转换功能:
        byte[] getBytes():把字符串转换为字节数组。
        char[] toCharArray():把字符串转换为字符数组。
        static String valueOf(char[] chs):把字符数组转成字符串。
        static String valueOf(int i):把int类型的数据转成字符串。
          注意:String类的valueOf方法可以把任意类型的数据转成字符串。
        String toLowerCase():把字符串转成小写。
        String toUpperCase():把字符串转成大写。
        String concat(String str):把字符串拼接。

     1 public class StringTest1 {
     2 
     3 public static void main(String[] args) {
     4 String s = "Java";
     5 
     6 //byte[] getBytes():把字符串转换为字节数组。转为数组的话,就需要遍历
     7 byte[] b = s.getBytes();
     8 for(int x=0;x<s.length();x++){
     9 System.out.println(b[x]);//转为ASCII码表
    10 }
    11 System.out.println("-------------");
    12 
    13 //char[] toCharArray():把字符串转换为字符数组。转为数组的话,就需要遍历
    14 char[] ca = s.toCharArray();
    15 for(int x=0;x<s.length();x++){
    16 System.out.println(ca[x]);
    17 }
    18 System.out.println("-------------");
    19 
    20 //static String valueOf(char[] chs):把字符数组转成字符串。
    21 String s1 = s.valueOf(ca);//调用上面形成的字符数组
    22 System.out.println("valueOf: "+s1);
    23 System.out.println("-------------");
    24 
    25 //static String valueOf(int i):把int类型的数据转成字符串。
    26 int i = 100;
    27 String s2 = s.valueOf(i);
    28 System.out.println("valueOf int: "+s2);//这里的100已经变为字符串了
    29 System.out.println("-------------");
    30 
    31 //String toLowerCase():把字符串转成小写。
    32 String s3 = s.toLowerCase();//创建一个新的数组
    33 System.out.println("toLowerCase:"+s3);
    34 System.out.println("s:"+s);//s本身没变
    35 //String toUpperCase():把字符串转成大写。
    36 String s4 = s.toUpperCase();
    37 System.out.println("toUpperCase:"+s4);
    38 System.out.println("-------------");
    39 
    40 //String concat(String str):把字符串拼接。
    41 String ss1 = "Person";
    42 String ss2 = "sleep";
    43 String ss3 = ss1+ss2;//推荐这种,方便
    44 System.out.println("第一种方式的拼接:"+ss3);
    45 String ss4 = ss1.concat(ss2);
    46 System.out.println("第二种方式的拼接:"+ss4);
    47 
    48 
    49 }
    50 
    51 }
    52 
    53 /*
    54 需求:把一个字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符)
    55 分析:
    56 A:截取字符串的第一个字母//保留String类型
    57 B:截取剩下的字母//保留String类型
    58 C:把A改成大写
    59 D:把B改成小写
    60 E:把C和D拼接起来
    61 */
    62 public class StringTest2 {
    63 
    64 public static void main(String[] args) {
    65 //定义一个字符串
    66 String s = "Java SE";
    67 
    68 //A:截取字符串的第一个字母//保留String类型
    69 String A = s.substring(0,1);//获得的是String类型,方便以后的拼接
    70 //int a = s.charAt(0); 这个方法获得的是ASCII码表,int类型
    71 
    72 //B:截取剩下的字母//保留String类型
    73 String B = s.substring(1);
    74 
    75 //C:把A改成大写
    76 String C = A.toUpperCase();
    77 
    78 //D:把B改成小写
    79 String D = B.toLowerCase();
    80 
    81 //E:把C和D拼接起来
    82 String E = C+D;
    83 System.out.println(E); //Java se
    84 
    85 //更便捷的做法,链式:
    86 System.out.println(
    87 s.substring(0,1).toUpperCase().
    88 concat( s.substring(1).toLowerCase() )
    89 ); //Java se
    90 }
    91 
    92 }

     统计案例的改进版,键盘输入字符串:

     1 import java.util.Scanner;
     2 public class StringTest3 {
     3 
     4     public static void main(String[] args) {
     5         
     6         Scanner sc = new Scanner(System.in);
     7         System.out.println("请输入你想统计的字符串:");
     8         String line = sc.nextLine();    
     9         
    10         //调用TonJi方法
    11         String result = TonJi(line);
    12         System.out.println("这个字符串中含有的大写字母、小写字母、数字的个数分别是:"+result);
    13 
    14     }
    15     
    16     //建立方法:
    17     // 返回类型:int 参数列表:String 
    18     public static String TonJi(String line){
    19         //定义一个空的字符串
    20         //String s1 = "";
    21         //定义三个可能变量:
    22         int bignum = 0;
    23         int smallnum = 0;
    24         int numbernum = 0;
    25         //遍历字符串length()和CharAt()
    26         for(int x=0;x<line.length();x++){
    27             //CharAt()获取索引的元素
    28             char ch = line.charAt(x);
    29             //进行判断
    30             if(ch>='a' && ch<='z'){
    31                 smallnum ++;
    32             }
    33             else if(ch>='A' && ch<='Z'){
    34                 bignum ++;
    35             }
    36             else if(ch>='0' && ch<='9'){
    37                 numbernum ++;
    38             }
    39             
    40         }
    41         String result1 = line.valueOf(bignum);
    42         String result2 = line.valueOf(smallnum);
    43         String result3 = line.valueOf(numbernum);
    44         String result = result1+result2+result3;
    45         //System.out.println("含有"+bignum+"个大写字母"+"含有"+smallnum+"个小写字母"+"含有"+numbernum+"个数字");
    46         return result;
    47     }
    48 
    49 }
    何事都只需坚持.. 难? 维熟尔。 LZL的自学历程...只需坚持
  • 相关阅读:
    重写(Overriding)与重载(Overloading)的区别
    A Guide to setup SQL Server Reporting Services (SSRS) with Dynamics AX
    date2Str Function in Dynamics AX 2009
    浅谈程序员加薪问题(转)
    消息队列设计精要
    Redis集群模式原理探究
    SpringBoot内置tomcat原理分析
    Mybatis整体设计探究
    MapStruct 使用详解
    Zookeeper快速领导者选举原理
  • 原文地址:https://www.cnblogs.com/LZL-student/p/5875707.html
Copyright © 2011-2022 走看看