JAVA关于String类和Integer类一些常用方法总结

前言

  1. 在开始介绍之前,先要说明一下这是本人个人知识总结,不代表适用于所有人知识盲区总结。这里也不是对源码进行分析,只讲述一些的个人比较常用方法和一些区别。

  2. 其次就是观看顺序,可以先从总结开始看起,如果全都知道,其他就不用看了。如果是觉得代码较多就从上到下慢慢看起。

关于String类

String类简介

首先要知道JAVA的八大基本数据类型之一的字符char,而String类就是对基本数据类型char进行封装使一个字符可以组成一个多个字符组。(详细实现步骤请查看源码,这里大致说明一下就是创建一个char类value[]数组进行操作)

String类常用方法

toCharArray()方法

toCharArray静态方法将String类转换成char类数组

 String s = "123";
 char a[] = s.toCharArray();
        for(int i=0;i<s.toCharArray().length;i++){
            System.out.print(a[i]+"\t");
            if(i==s.toCharArray().length-1){System.out.println();}
        }

charAt(int index)方法

charAt(int index)静态方法查看字符串第index+1个字符

String s = "123";
 for(int i=0;i<s.length();i++){
            System.out.print(s.charAt(i)+"\t");
            if(i==s.length()-1){ System.out.println();}
        }

indexOf(String str,int fromIndex)方法

indexOf(String str,int fromIndex)静态方法,如果找到返回下标,否则返回值-1

 String s = "123";
 System.out.println(s.indexOf("2",1));

关于Integer类

Integer类简介

简单介绍一下,Integer是对基本数据类型int的封装包装。Integer和int的区别在使用方面就是默认值,Integer默认值为null,int默认值为0;再者就是存储方面差异面向对象思想的Integer如果再new一个就是另一个对象,int则是直接储存数据。

 public static void main(String[] args) {
        int a=1;
        int c=1;
        Integer b= 1;
        Integer d= new Integer(1);
        System.out.println(a==c);
        System.out.println(b==d);
    }

Integer类常用方法

max和min方法

        System.out.println(Integer.max(1,2));
        System.out.println(Integer.min(1,2));

compare方法

		System.out.println(Integer.compare(1,3));
        System.out.println(Integer.compare(2,2));
        System.out.println(Integer.compare(3,2));

总结相关相关代码

package com.test.Until7;

/**
 * @author
 * @create 2019-05-10
 */
public class Test {
    /**
     * 关于Integer类的相关知识
     * 注意1如果Integer值为null是无法用toString转换成String的,详细请查看下面代码
     * 注意2如果数据转换最好转好成基本数据类型int,本次复习针对Integer的相关内容
     */
    public static void AboutInteger(){
        //Integer提供两个int类型最大最小值。
        Integer integer_Max=Integer.MAX_VALUE;  //MAX值2^31-1,即int类的最大值
        Integer integer_Min=Integer.MIN_VALUE;  //MIN值-2^31-1,即int类的最小值
		
		        //int和Integer的区别
        int a=1;
        int c=1;
        Integer b= new Integer(1);      
        Integer d= new Integer(1);   
        System.out.println(a==c);       //true
        System.out.println(b==d);       //false
     
        //定义一个测试用的值,用于测试Integer转换成String
        Integer a1 = 100;
        String b1 = a1+"";              //方法1,这里要注意会生成了两个String对象(不推荐使用)
        String c1 = a1.toString();      //方法2,调用Integer提供的toString方式,大致思路是将数据转换成char数组再组合String(前提是Integer不是null)
        String d1 = String.valueOf(a1); //方法3,直接用String的静态方法转换,与方法1不同的是只产生一个对象(推荐使用方法,比较好用)
//        System.out.println(b1+"的类型是"+b1.getClass().getName()+"\n"+
//                c1+"的类型是"+c1.getClass().getName()+"\n"+
//                d1+"的类型是"+d1.getClass().getName()); //显示转换好后的类型

        //关于Integer类运算过程中的注意事项
        Integer a2 = 100;
        int b2 = 2;
//        System.out.println(a2+b2+"\t"+a2*b2+"\t"+
//                a2/b2+"\t"+a2%b2+"\t"+(a2-b2)); //Integer类型是可以和int类型进行加减乘除余除计算的(在Integer类不是null的情况下)

	        //max和min
        System.out.println(Integer.max(1,2));
        System.out.println(Integer.min(1,2));
        
		 //compare
        System.out.println(Integer.compare(1,3));
        System.out.println(Integer.compare(2,2));
        System.out.println(Integer.compare(3,2));
    }

    /**
     * 关于String类的相关知识
     * 主要针对字符串String和基本类型字符char及String一些比较常用的方法
     */
    public static void AboutString(){
        //数据转换相关知识
        String s = "123";
        int i1 = Integer.parseInt(s);           //方法1,用定义Integer提供的静态方法转换
        int i2 = Integer.valueOf(s).intValue(); //方法2,先定义Integer类再转换成int类
        System.out.println(i1+"\t"+i2);

        //toCharArray静态方法将String类转换成char类数组
        char a[] = s.toCharArray();
        for(int i=0;i<s.toCharArray().length;i++){
            System.out.print(a[i]+"\t");
            if(i==s.toCharArray().length-1){System.out.println();}
        }

        //charAt(int index)静态方法查看字符串第index+1个字符
        for(int i=0;i<s.length();i++){
            System.out.print(s.charAt(i)+"\t");
            if(i==s.length()-1){ System.out.println();}
        }

        //indexOf(String str,int fromIndex)静态方法,如果找到返回下标,否则返回值-1
        System.out.println(s.indexOf("2",1));
    }
    /**
     * 关于==和equals的区别
     * 主要补充说明上述转换方法的区别及针对==,随便解释==和equals区别
     */
    public static void Aboutequals(){
        int a = 1;
        Integer b = null;
        String c = "null";
        //访问储存地址是否一致,这里就不new一个新的对象展示区别,仅说明上述转换结果差异
        System.out.println(c==String.valueOf(b));       //true
        System.out.println(c==(b+""));                  //false
        System.out.println(c==String.valueOf(b));       //true

        //因为是比较内容下面结构都是true
        System.out.println(c.equals(String.valueOf(b)));
        System.out.println(c.equals(b+""));
    }
    public static void main(String[] args) {
        Aboutequals();
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值