Java Guava Chars类

1 什么是Guava Chars类

Chars 是原始类型 char 的实用程序类。

2 Guava Chars类的语法

@GwtCompatible(emulated = true)
   public final class Chars
      extends Object

3 Guava Chars类的方法

方法 描述
static List<Character> asList(char... backingArray) 返回由指定数组支持的固定大小列表,类似于 Arrays.asList(Object[])。
static char checkedCast(long value) 如果可能,返回等于 value 的 char 值。
static int compare(char a, char b) 比较两个指定的 char 值。
static char[] concat(char[]... arrays) 返回每个提供的数组中组合成单个数组的值。
static boolean contains(char[] array, char target) 如果目标作为数组中任何位置的元素存在,则返回 true。
static char[] ensureCapacity(char[] array, int minLength, int padding) 返回包含与数组相同的值的数组,但保证具有指定的最小长度。
static char fromByteArray(byte[] bytes) 返回其 big-endian 表示存储在字节的前 2 个字节中的 char 值;相当于 ByteBuffer.wrap(bytes).getChar()。
static char fromBytes(byte b1, byte b2) 以 big-endian 顺序返回其字节表示为给定 2 个字节的 char 值;相当于 Chars.fromByteArray(new byte[] {b1, b2})。
static int hashCode(char value) 返回值的哈希码;等于调用((Character) value).hashCode()的结果。
static int indexOf(char[] array, char target) 返回值目标在数组中第一次出现的索引。
static int indexOf(char[] array, char[] target) 返回指定目标在数组中第一次出现的起始位置,如果没有这样的出现,则返回 -1。
static String join(String separator, char... array) 返回一个字符串,其中包含由分隔符分隔的提供的字符值。
static int lastIndexOf(char[] array, char target) 返回值目标在数组中最后一次出现的索引。
static Comparator<char[]> lexicographicalComparator() 返回按字典顺序比较两个字符数组的比较器。
static char max(char... array) 返回数组中存在的最大值。
static char min(char... array) 返回数组中存在的最小值。
static char saturatedCast(long value) 返回值中最接近值的字符。
static char[] toArray(Collection<Character> collection) 将 Character 实例的集合复制到原始字符值的新数组中。
static byte[] toByteArray(char value) 返回 两个 元素字节数组中 value 的 big-endian 表示形式;相当于 ByteBuffer.allocate(2).putChar(value).array()。

5 Guava Chars类的例子

让我们看一个简单的Guava Chars类示例。

package com.yiidian;

import com.google.common.primitives.Chars;

import java.util.List;

public class GuavaTester {
   public static void main(String args[]) {
      GuavaTester tester = new GuavaTester();
      tester.testChars();
   }

   private void testChars() {
      char[] charArray = {'a','b','c','d','e','f','g','h'};

      //convert array of primitives to array of objects
      List<Character> objectArray = Chars.asList(charArray);
      System.out.println(objectArray.toString());

      //convert array of objects to array of primitives
      charArray = Chars.toArray(objectArray);
      System.out.print("[ ");
      
      for(int i = 0; i< charArray.length ; i++) {
         System.out.print(charArray[i] + " ");
      }
      
      System.out.println("]");
      
      //check if element is present in the list of primitives or not
      System.out.println("c is in list? " + Chars.contains(charArray, 'c'));

      //return the index of element
      System.out.println("c position in list " + Chars.indexOf(charArray, 'c'));

      //Returns the minimum		
      System.out.println("Min: " + Chars.min(charArray));

      //Returns the maximum		
      System.out.println("Max: " + Chars.max(charArray));	
   }
}

输出结果为:

 

热门文章

优秀文章