包装类 Integer和 character

基本类型对应都有一个包装类型,目的就为了将基本数据类型可以String类型之间进行互相转换

基本类型                       包装类型

      byte                             Byte

      short                            Short

      int                                Integer

      long                             Long

      float                              Float

      double                         Double

      char                              character  

      boolean                         Boolean

                                        Integer类

Integer类是int类型的包装类类型

Integer的最值属性:

public static final int MAX_VALUE

             publicstatic final int MIN_VALUE

问题:   需要将100十进制转换为它的二进制,八进制,十六进制...

Integer提供了静态功能:

      publicstatic String toBinaryString(int i)

      publicstatic String toOctalString(int i)

      publicstatic String toHexString(int i)

代码实现:

System.out.println(Integer.toBinaryString(100));//二进制组成:有0和1组成

System.out.println(Integer.toOctalString(100));//组成规则:以0开头  0144

System.out.println(Integer.toHexString(100));//组成规则:0x开头 0-9,a-f

System.out.println(Integer.MAX_VALUE);

System.out.println(Integer.MIN_VALUE);

Integer的构造方法:

             publicInteger(int value)

             publicInteger(String s)

如何将int转换为String类型

                   valueOf(int i) ;

  将String转换为int类型

            static int     parseInt(String s);

代码如下:

package it_cast_01;

 

publicclassIntegerDemo3{

   publicstaticvoidmain(String[]args){

     

      //int---->String

      //定义一个int类型的变量

      intnum=100;

     

      //方式1: 字符串拼接

      Stringstr=""  +num;

      System.out.println("str:"+str);

     

      //方式2:valueOf(int i) ;

      //int -->Integer--->String

      Integeri=Integer.valueOf(num);

      Stringstr2=i.toString();

      System.out.println("str2:"+str2);

     

      //方式3:静态toString(int i):   staticString toString(int i )

      Stringstr3=Integer.toString(num);

      System.out.println("str3:"+str3);

     

      System.out.println("----------------------");

     

      //String--->int

      Strings="100";

     

      //方式1:String-->integer--->int

      Integerii=newInteger(s);

      //public int intValue()

      intnum2=ii.intValue();

      System.out.println("num2:"+num2);

     

      //方式2:(常用)public static int parseInt(String s)

      intnum3=Integer.parseInt(s);

      System.out.println("num3:"+num3);

     

   }

}

 

JDK5 以后提供了自动拆装箱

     可以将Integer-->拆箱  int类型

     可以将int类型--->装箱 Integer类型

public classIntegerDemo4 {

      

       public static void main(String[] args) {

             

              //创建Integer对象

//           Integer i = new Integer(100) ;

              Integer i = 100 ;

             

              i += 200;           //先拆箱(Integer-->int),后装箱(int值---->Integer)

              //引用类型 += 基本类型    

              System.out.println("i:"+i);

             

              /**

               * 反编译代码:

               *

               *        Integeri = Integer.valueOf(100);

                     i =Integer.valueOf(i.intValue()  +200);//(int类型的100 +200)

                     System.out.println((newStringBuilder("i:")).append(i).toString());

               */

             

       }

 

                                                 Character 类

Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。 以确定字符的类别(小写字母,数字,等等),

构造方法:

      publicCharacter(char value)

Character类的判断功能:

  public static boolean isDigit(char ch)确定指定字符是否为数字。

  publicstatic boolean isLowerCase(int ch): 确定是否是小写字母字符

  publicstatic boolean isUpperCase(int ch):确定是否大写字母字符

 两个转换功能:

     public static int toLowerCase(int codePoint)将该字符转为小写字符

     public static int toUpperCase(int codePoint)将该字符转为大写字符

Character 类的综合举例

importjava.util.Scanner;

需求:键盘录入一个字符串,统计当前字符串中大写字母字符,小写字母字符,数字字符的个数(不考虑其他字符)

public classCharacterDemo3 {

       public static void main(String[] args) {

             

              //定义三个统计变量

              int bigCount = 0 ;

              int smallCount= 0 ;

              int numberCount = 0 ;

             

              //创建键盘录入对象

              Scanner sc = newScanner(System.in) ;

             

              //接收数据

              System.out.println("请输入一个字符串:");

              String line = sc.nextLine() ;

             

              //把字符串转成字符数组

              char[] chs = line.toCharArray() ;

             

              //遍历,取出每一个字符

              for(int x = 0 ; x < chs.length; x ++) {

                     char ch = chs[x] ;

                    

                     //判断当前ch字符是否为大写字母字符,数字字符,小写字母字符

                     if(Character.isUpperCase(ch)){

                            bigCount ++;

                     }elseif(Character.isDigit(ch)) {

                            numberCount++;

                     }elseif(Character.isLowerCase(ch)) {

                            smallCount++ ;

                     }

              }

              System.out.println("大写字母字符有:"+bigCount+"个");

              System.out.println("小写字母字符有:"+smallCount+"个");

              System.out.println("数字字符有:"+numberCount+"个");

       }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值