java String类用法,arraycopy,arrays工具的使用,加上二分查找法

关于String类常用功能:

  public class ll {
    public static void main(String[] args) {
        String a="  cffACvDarwerABCDa  ";
        String b="ABCDa";
        System.out.println(a.equalsIgnoreCase(b));//忽略大小写比较两个字符串,返回boolean类型;
        System.out.println(a.indexOf(b));//查找a中是否包含b这个子字符串,没有返回-1,有的话返回第一个字符所在的位置下标
        System.out.println(a.replace("ACv","Mv"));//把A换成M,然后返回一个新的字符串;
        System.out.println(b.startsWith("A"));//是否以“A”这个字符串开头,返回boolean类型
        System.out.println(a.endsWith("Da"));//是否以“Da”结尾;
        System.out.println(a.substring(2));//从下标为2开始返回新的字符串
        System.out.println(a.substring(2,4));//从下标为2开始到4结束不包含4这个下标
        System.out.println(a.toLowerCase());//全部转换成小写返回新的字符串。
        System.out.println(a.toUpperCase());//全部转换成大写返回新的字符串
        System.out.println(a.length());
        System.out.println(a.trim().length());//trim去掉首位所有空格,返回一个新的字符串
    }
}

arraycopy:
首先它在System类中

package acm;
import java.util.Arrays;
import java.util.Scanner;
public class program
{
    public static void main(String[] args) {
          int arr[]=new int[10];
          Scanner p=new Scanner(System.in);
        for (int i = 0; i <10 ; i++) {
            arr[i]=p.nextInt();
        }
        int a[]=new int [10];
        System.arraycopy(arr,1,a,2,3);//arr是原始数组,从数组arr为1的下标开始以后的3
        //个数拷贝到数组a中以下标2开始的连续的空间中。
        for (int ad :a)
        {
            System.out.println(ad);
        }
    }
}

arrays工具类:

package acm;
import java.util.Arrays;
import java.util.Scanner;
public class program
{
    public static void main(String[] args) {
          int arr[]=new int[10];
          Scanner p=new Scanner(System.in);
        for (int i = 0; i <10 ; i++) {
            arr[i]=p.nextInt();
        }
        System.out.println(Arrays.toString(arr));//这里的toString和object继承来的不是一回事
        Arrays.sort(arr);//冒泡排序
        System.out.println(Arrays.toString(arr));
        System.out.println(Arrays.binarySearch(arr,12));//二分查找返回索引下标,否则返回-1。
    }
}

二分查找:

package acm;
import java.util.Arrays;
import java.util.Scanner;
public class program {
    public static void main(String[] args) {
        int arr[] = new int[]{2,3,4,5,1,9,7,8,0};
        Arrays.sort(arr);
        for (int n:arr)
        {
            System.out.println(n);
        }
        int low=0;
        int high=arr.length-1;
        int flag=8;
        int q=0;
        int t=0;
        while(low<=high)
        {
             t=(low+high)/2;
            if(arr[t]==flag)
            {
                q=1;
                break;
            }
            else if(arr[t]>flag)
            {
                high=t;
            }
           else  if(arr[t]<flag)
            {
                low=t;
            }

        }
        if(q==1)
        {
            System.out.println(t);
        }
        else
            System.out.println(-1);
    }
}
发布了37 篇原创文章 · 获赞 52 · 访问量 1839

猜你喜欢

转载自blog.csdn.net/qq_45737068/article/details/104053484