Java CharsetDecoder averageCharsPerByte()方法及示例
averageCharsPerByte() 方法是 java.nio.charset.CharsetDecoder类 的一个内置方法,用于返回每个字节的输入将产生的平均字符数。这个启发式的数值可以用来估计一个给定的输入序列所需的输出缓冲区的大小。
语法:
public final float averageCharsPerByte()
参数 :该函数不接受任何参数。
返回值 :该函数返回每个字节的输入将产生的平均字符数。
下面是上述函数的实现。
程序 1 :
// Java program to demonstrate
// the above function
import java.nio.charset.*;
import java.util.Iterator;
import java.util.Map;
public class GFG {
public static void main(String[] args)
{
// Gets the charset
Charset charset = Charset.forName("ISO-2022-CN");
// Get the CharsetDecoder
CharsetDecoder decoder = charset.newDecoder();
// Prints the averageCharsPerByte
System.out.println("The averageCharsPerByte "
+ "for ISO-2022-CN is "
+ decoder.averageCharsPerByte());
}
}
输出:
The averageCharsPerByte for ISO-2022-CN is 1.0
程序2
// Java program to demonstrate
// the above function
import java.nio.charset.*;
import java.util.Iterator;
import java.util.Map;
public class GFG {
public static void main(String[] args)
{
// Gets the charset
Charset charset = Charset.forName("x-windows-949");
// Get the CharsetDecoder
CharsetDecoder decoder = charset.newDecoder();
// Prints the averageCharsPerByte
System.out.println("The averageCharsPerByte "
+ "for ISO-2022-CN is "
+ decoder.averageCharsPerByte());
}
}
输出:
The averageCharsPerByte for ISO-2022-CN is 0.5
参考资料: https://docs.oracle.com/javase/9/docs/api/java/nio/charset/CharsetDecoder.html#averageCharsPerByte-