zoukankan      html  css  js  c++  java
  • 【9】常用工具类:Scanner类、Random类、String类、Arrays类、Math类、匿名对象

    Scanner类

    一个可以解析基本类型和字符串的简单文本扫描器。

    举例

    匿名对象

    创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。虽然是创建对象的简化写法,但是应用场景非常有限。

    匿名对象:没有对象名的对象。

    格式: new 类名(参数列表);

    举例:new Scanner(System.in);

     应用场景:

     1、创建匿名对象直接调用方法,没有变量名。

     2、一旦调用两次方法,就是创建了两个对象,造成浪费。(一个匿名对象,只能使用一次)

     3、匿名对象作为方法的参数和返回值

    作为参数

     作为返回值

    Random类

    :java.util.Random 需要导入

    构造方法:public Random() 创建一个新的随机数生成器

    成员方法:public int nextInt(int n) 返回一个伪随机数,范围在0(包括)和指定值 n(不包括)之间的int 值。

    举例:使用Random类,生成3个10以内的随机整数

    String类

    :java.lang.String 此类不需要导入

    String类构造方法

    1、public String()
    无参构造方法,用来创建空字符串的String对象。
     1 String str1 = new String(); 
    2、public String(String value)
    用已知的字符串value创建一个String对象。
     1 String str2 = new String("asdf"); 2 String str3 = new String(str2); 
    3、public String(char[] value)
    用字符数组value创建一个String对象。

    1 char[] value = {'a','b','c','d'};
    2 String str4 = new String(value);//相当于String str4 = new String("abcd");


    4、public String(char chars[], int startIndex, int numChars)
    用字符数组chars的startIndex开始的numChars个字符创建一个String对象。

    1 char[] value = {'a','b','c','d'};
    2 String str5 = new String(value, 1, 2);//相当于String str5 = new String("bc");


    5、public String(byte[] values)
    用比特数组values创建一个String对象。

    1 byte[] strb = new byte[]{65,66};
    2 String str6 = new String(strb);//相当于String str6 = new String("AB");

    String类常用方法
    1、求字符串长度
    public int length()//返回该字符串的长度

    1 String str = new String("asdfzxc");
    2 int strlength = str.length();//strlength = 7


    2、求字符串某一位置字符
    public char charAt(int index)//返回字符串中指定位置的字符;注意字符串中第一个字符索引是0,最后一个是length()-1。

    1 String str = new String("asdfzxc");
    2 char ch = str.charAt(4);//ch = z


    3、提取子串
    用String类的substring方法可以提取字符串中的子串,该方法有两种常用参数:
    1)public String substring(int beginIndex)//该方法从beginIndex位置起,从当前字符串中取出剩余的字符作为一个新的字符串返回。
    2)public String substring(int beginIndex, int endIndex)//该方法从beginIndex位置起,从当前字符串中取出到endIndex-1位置的字符作为一个新的字符串返回。

    1 String str1 = new String("asdfzxc");
    2 String str2 = str1.substring(2);//str2 = "dfzxc"
    3 String str3 = str1.substring(2,5);//str3 = "dfz"


    4、字符串比较
    1)public int compareTo(String anotherString)//该方法是对字符串内容按字典顺序进行大小比较,通过返回的整数值指明当前字符串与参数字符串的大小关系。若当前对象比参数大则返回正整数,反之返回负整数,相等返回0。
    2)public int compareToIgnore(String anotherString)//与compareTo方法相似,但忽略大小写。
    3)public boolean equals(Object anotherObject)//比较当前字符串和参数字符串,在两个字符串相等的时候返回true,否则返回false。
    4)public boolean equalsIgnoreCase(String anotherString)//与equals方法相似,但忽略大小写。

    复制代码
    1 String str1 = new String("abc");
    2 String str2 = new String("ABC");
    3 int a = str1.compareTo(str2);//a>0
    4 int b = str1.compareToIgnoreCase(str2);//b=0
    5 boolean c = str1.equals(str2);//c=false
    6 boolean d = str1.equalsIgnoreCase(str2);//d=true
    复制代码


    5、字符串连接
    public String concat(String str)//将参数中的字符串str连接到当前字符串的后面,效果等价于"+"。

    1 String str = "aa".concat("bb").concat("cc");
    2 相当于String str = "aa"+"bb"+"cc";


    6、字符串中单个字符查找
    1)public int indexOf(int ch/String str)//用于查找当前字符串中字符或子串,返回字符或子串在当前字符串中从左边起首次出现的位置,若没有出现则返回-1。
    2)public int indexOf(int ch/String str, int fromIndex)//改方法与第一种类似,区别在于该方法从fromIndex位置向后查找。
    3)public int lastIndexOf(int ch/String str)//该方法与第一种类似,区别在于该方法从字符串的末尾位置向前查找。
    4)public int lastIndexOf(int ch/String str, int fromIndex)//该方法与第二种方法类似,区别于该方法从fromIndex位置向前查找。

    复制代码
    1 String str = "I am a good student";
    2 int a = str.indexOf('a');//a = 2
    3 int b = str.indexOf("good");//b = 7
    4 int c = str.indexOf("w",2);//c = -1
    5 int d = str.lastIndexOf("a");//d = 5
    6 int e = str.lastIndexOf("a",3);//e = 2
    复制代码


    7、字符串中字符的大小写转换
    1)public String toLowerCase()//返回将当前字符串中所有字符转换成小写后的新串
    2)public String toUpperCase()//返回将当前字符串中所有字符转换成大写后的新串

    1 String str = new String("asDF");
    2 String str1 = str.toLowerCase();//str1 = "asdf"
    3 String str2 = str.toUpperCase();//str2 = "ASDF"


    8、字符串中字符的替换
    1)public String replace(char oldChar, char newChar)//用字符newChar替换当前字符串中所有的oldChar字符,并返回一个新的字符串。
    2)public String replaceFirst(String regex, String replacement)//该方法用字符replacement的内容替换当前字符串中遇到的第一个和字符串regex相匹配的子串,应将新的字符串返回。
    3)public String replaceAll(String regex, String replacement)//该方法用字符replacement的内容替换当前字符串中遇到的所有和字符串regex相匹配的子串,应将新的字符串返回。

    1 String str = "asdzxcasd";
    2 String str1 = str.replace('a','g');//str1 = "gsdzxcgsd"
    3 String str2 = str.replace("asd","fgh");//str2 = "fghzxcfgh"
    4 String str3 = str.replaceFirst("asd","fgh");//str3 = "fghzxcasd"
    5 String str4 = str.replaceAll("asd","fgh");//str4 = "fghzxcfgh"


    9、其他类方法
    1)String trim()//截去字符串两端的空格,但对于中间的空格不处理。

    1 String str = " a sd ";
    2 String str1 = str.trim();
    3 int a = str.length();//a = 6
    4 int b = str1.length();//b = 4


    2)boolean statWith(String prefix)boolean endWith(String suffix)//用来比较当前字符串的起始字符或子字符串prefix和终止字符或子字符串suffix是否和当前字符串相同,重载方法中同时还可以指定比较的开始位置offset。

    1 String str = "asdfgh";
    2 boolean a = str.statWith("as");//a = true
    3 boolean b = str.endWith("gh");//b = true


    3)regionMatches(boolean b, int firstStart, String other, int otherStart, int length)//从当前字符串的firstStart位置开始比较,取长度为length的一个子字符串,other字符串从otherStart位置开始,指定另外一个长度为length的字符串,两字符串比较,当b为true时字符串不区分大小写。
    4)contains(String str)//判断参数s是否被包含在字符串中,并返回一个布尔类型的值。

    1 String str = "student";
    2 str.contains("stu");//true
    3 str.contains("ok");//false


    5)String[] split(String str)//将str作为分隔符进行字符串分解,分解后的字字符串在字符串数组中返回。

    1 String str = "asd!qwe|zxc#";
    2 String[] str1 = str.split("!|#");//str1[0] = "asd";str1[1] = "qwe";str1[2] = "zxc";

    Arrays类

     Math类

  • 相关阅读:
    Shell脚本学习笔记2
    Shell脚本学习笔记1
    华大MCU硬件SMBus的应用
    华大MCU的应用中的问题记录
    STM32定时器输入捕获功能应用——超声波模块
    STM32定时器应用——PWM
    利用KEIL的软件仿真的逻辑分析仪功能观察GPIO的波形
    周期性过程数据通信和非周期性邮箱数据通信
    JDBCUtils
    反射
  • 原文地址:https://www.cnblogs.com/crystal1126/p/12653079.html
Copyright © 2011-2022 走看看