ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-10-26

2021-10-26 23:32:38  阅读:156  来源: 互联网

标签:返回 10 26 String int 代码 2021 str 字符串


java笔记

检查字符是否为补充字符(占用两位代码单元)

Character.isSupplementaryCodePoint(varName) //返回boolean值

java中的codepoint方法

现在的 Unicode 已经有 17 个代码平面,每个平面有 65536 个字符,加起来就是 1114112 个字符,2个字节已经无法表示这么多字符了,所以 String 目前使用 char[] 存储 UTF-16 编码,再将 UTF-16 编码转成 Unicode。

UTF-16 是基于 Unicode 的不定长度的字符编码(不定长度是指,有些字符使用 2 个字节表示,有些字符使用 4 个字节表示)。utf-16 的基本单位是 2 个字节,英文名叫 code unit,而真正能表示一个 Unicode 字符的数据(在 utf-16 中可能是 2 个字节也可能是 4 个字节)叫代码点,英文名叫 code point。

原文链接: java中codepoints方法_Java String codePointCount() 方法_合光聚乐的博客-CSDN博客

UTF - 16编码详解 UTF-16编码详解 - 知乎

#

Booth[] booths=new Booth[5];
        for(int i=0;i<5;i++){
            booths[i]=new Booth(i,"瓜摊"+i,i*5,false);
            //初始化五个瓜摊
        }

数组内的元素也可调用有参构造

int[] codePoints = str.codePoints().toArray();
//使用codepoint方法【以数组形式】将字符串码点【ascii码】输出
String str = new String(codePoints, 0, codePoints.length);
//重写方法将码点转换为字符串
StringBuilder builder = new StringBuilder();
builder.append(ch); // appends a single character
bui1der.append(str); // appends a string
String completedString = builder.toString();
//将多个字符串连成一个

因为输入是可见的,所以 Scanner 类不适用于从控制台读取密码。Java SE 6 特别 引入了 Console 类实现这个目的。要想读取一个密码,可以采用下列代码:

Console cons = System.console();
String username = cons.readLine("User name: ");
char[] passwd = cons.readPassword("Password:");

• char charAt (int index) 返回给定位置的代码单元。除非对底层的代码单元感兴趣,否则不需要调用这个 方法。 • int codePointAt(int Index) 5.0 返回从给定位置开始的码点。 • int offsetByCodePoints(int startlndex, int cpCount) 5.0 返回从startlndex 代码点开始,位移cpCount 后的码点索引。 • i n t compareTo(String other) 按照字典顺序,如果字符串位于other 之前,返回一个负数;如果字符串位于other 之 后,返回一个正数;如果两个字符串相等,返回0。 • IntStream codePoints() 8 将这个字符串的码点作为一个流返回。调用toArray 将它们放在一个数组中。 • new String(int[] codePoints, int offset, int count) 5.0 用数组中从offset 开始的count 个码点构造一个字符串。 • boolean equals(0bject other) 如果字符串与other 相等,返回true。

• boolean equalsIgnoreCase( String other ) 如果字符串与other 相等 (忽略大小写),返回 tme。 • boolean startsWith( String prefix ) • boolean endsWith( String suffix ) 如果字符串以 suffix 开头或结尾,则返回 true。 • int indexOf ( String str ) • int indexOf ( String str , int fromlndex ) • int indexOf ( int cp ) • int indexOf ( int cp, int fromlndex ) 返回与字符串str 或代码点cp 匹配的第一个子串的开始位置。这个位置从索引 0 或 fromlndex 开始计算。如果在原始串中不存在 str,返回-1。 • int 1astIndexOf ( String str ) • Int 1 astIndexOf ( Stri ng str , int fromlndex ) • int lastindexOf ( int cp ) • int 1 astindexOf ( int cp, int fromlndex ) 返回与字符串 str 或代码点cp 匹配的最后一个子串的开始位置。这个位置从原始串尾 端或 fromlndex 开始计算。 • int 1ength( ) 返回字符串的长度。

• int codePointCount ( int startlndex , int endlndex ) 5.0 返回startlndex 和endludex-l 之间的代码点数量。没有配成对的代用字符将计入代码点。參 String replace( CharSequence oldString, CharSequence newString) 返回一个新字符串。这个字符串用newString 代替原始字符串中所有的oldString。可 以用String 或StringBuilder 对象作为CharSequence 参数。 • String substring( int beginlndex ) 參 String substring( int beginlndex, int endlndex ) 返回一个新字符串。这个字符串包含原始字符串中从beginlndex 到串尾或endlndex-l 的所有代码单元。 • String toLowerCase( ) 參 String toUpperCase( ) 返回一个新字符串。这个字符串将原始字符串中的大写字母改为小写,或者将原始字 符串中的所有小写字母改成了大写字母。 • String t r i m( ) 返回一个新字符串。这个字符串将删除了原始字符串头部和尾部的空格。 • String join( CharSequence delimiter , CharSequence . .. elements ) 8 返回一个新字符串, 用给定的定界符连接所有元素。

• StringBuilder() 构造一个空的字符串构建器。 • int length() 返回构建器或缓冲器中的代码单元数量。 • Stri ngBui 1 der appencl(Stri ng str) 追加一个字符串并返回this。 • StringBui 1der append(char c) 追加一个代码单元并返回this。 • StringBui 1der appendCodePoint(int cp) 追加一个代码点,并将其转换为一个或两个代码单元并返回this。 • void setCharAt(int i,char c) 将第 i 个代码单元设置为c。 • StringBui 1 der insert(int offset,String str) 在offset 位置插入一个字符串并返回this。 • StringBuilder insert(int offset,Char c) 在offset 位置插入一个代码单元并返回this。 • StringBui 1der delete(1 nt startindex,int endlndex) 删除偏移量从startindex 到-endlndex-1 的代码单元并返回this。 • String toString() 返回一个与构建器或缓冲器内容相同的字符串

摘自java核心卷

标签:返回,10,26,String,int,代码,2021,str,字符串
来源: https://blog.csdn.net/binaryyy/article/details/120983672

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有