首页 > 应用开发 > Node.js > String是Java中用于表示字符串的类
public class StringCreateDemo { public static void main (String[] args) { // 方式1:直接赋值(推荐)—— 从常量池获取/创建对象 String s1 = "Hello" ; String s2 = "Hello" ; // == 比较的是对象的内存地址,s1和s2指向常量池同一个对象 System.out.println(s1 == s2); // 输出:true // 方式2:new关键字 —— 每次new都会在堆内存创建新对象 String s3 = new String ( "Hello" ); String s4 = new String ( "Hello" ); System.out.println(s3 == s4); // 输出:false // 正确比较字符串内容:用equals()方法(String重写了Object的equals)
public class StringMethodsDemo { public static void main (String[] args) { String str = " Hello Java! " ; // 1. 获取字符串长度:length() int len = str.length(); System.out.println( "长度:" + len); // 输出:14(包含首尾空格) // 2. 获取指定索引的字符:charAt(int index)(索引从0开始) char c = str.charAt( 3 ); System.out.println( "索引3的字符:" + c); // 输出:l // 3. 去除首尾空格:trim()(JDK11+可用strip()) String trimStr = str.trim(); System.out.println( "去空格后:" + trimStr); // 输出:Hello Java! // 4. 大小写转换 String upperStr = trimStr.toUpperCase(); // 转大写 String lowerStr = trimStr.toLowerCase(); // 转小写 System.out.println( "大写:" + upperStr); // 输出:HELLO JAVA! System.out.println( "小写:" + lowerStr); // 输出:hello java!jnhjpj.cn // 5. 判断是否包含指定子串:contains(CharSequence s) boolean hasJava = trimStr.contains( "Java" ); System.out.println( "包含Java?" + hasJava); // 输出:true // 6. 截取子串:substring(int beginIndex[, int endIndex]) // 注意:endIndex是结束索引(不包含),左闭右开 String sub1 = trimStr.substring( 6 ); // 从索引6截取到末尾 String sub2 = trimStr.substring( 0 , 5 ); // 截取0-4索引的字符 System.out.println( "sub1:" + sub1); // 输出:Java! System.out.println( "sub2:" + sub2); // 输出:Hello // 7. 分割字符串:split(String regex) String[] splitArr = trimStr.split( " " ); // 按空格分割 System.out.println( "分割后数组:" + Arrays.toString(splitArr)); // 输出:[Hello, Java!] // 8. 替换字符/子串:replace(CharSequence old, CharSequence new) String replaceStr = trimStr.replace( "Java" , "World" ); System.out.println( "替换后:" + replaceStr); // 输出:Hello World! // 9. 判断字符串是否为空/空白:isEmpty()、isBlank()(JDK11+) String emptyStr = "" ; String blankStr = " " ; System.out.println(emptyStr.isEmpty()); // 输出:true System.out.println(blankStr.isBlank()); // 输出:true(JDK11+)
public static void main (String[] args) { // 1. 创建StringBuilder对象(初始容量16,可指定容量减少扩容次数) StringBuilder sb = new StringBuilder (); // 空构造,初始容量16 // StringBuilder sb = new StringBuilder(32); // 指定初始容量,避免频繁扩容 // 2. 拼接内容:append()(核心方法,支持所有数据类型) deebei.net sb.append( "Hello" );jrs.ttLyf.cn sb.append( " " );yqswh.cn sb.append( "Java" ); sb.append( 8 ); // 拼接数字 System.out.println( "拼接后:" + sb); // 输出:Hello Java8 // 3. 插入内容:insert(int offset, 内容) sb.insert( 6 , "My " ); // 在索引6的位置插入"My " System.out.println( "插入后:" + sb); // 输出:Hello My Java8 // 4. 替换内容:replace(int start, int end, String str)(左闭右开) sb.replace( 6 , 9 , "New" ); // 替换索引6-8的内容为"New"tinghaoshu.cn System.out.println( "替换后:" + sb); // 输出:Hello New Java8 // 5. 反转字符串:reverse() sb.reverse(); System.out.println( "反转后:" + sb); // 输出:8avaJ weN olleH // 6. 删除内容:delete(int start, int end) sb.delete( 0 , 1 ); // 删除索引0的字符(8) System.out.println( "删除后:" + sb); // 输出:avaJ weN olleH // 7. 转为String(最终使用时一般要转成String) String finalStr = sb.toString(); System.out.println( "最终String:" + finalStr); // 输出:avaJ weN olleH // 8. 获取长度:length() 4008986689.cn System.out.println( "当前长度:" + sb.length()); // 输出:13 // ================== StringBuffer用法(仅创建方式不同) ==============
多样的数据格式与跨节点共享:不同模型的数据格式差异较大,特别是三维模型的格式复杂性和跨平台兼容问题,存储系统需要支持多种格式,并有效管理跨节点和跨平台的数据共享。
可以处理不同尺寸的数据模型:无论是语言模型的小文件、大规模图片/视频数据,还是三维模型的大文件,存储系统必须具备高扩展性,以应对快速增长的存储需求,并高效处理大尺寸数据的存储和访问。
跨云与集群存储的挑战:随着数据量的增加,特别是三维模型的 PB 级存储需求,跨云和集群存储问题愈加突出。存储系统需要支持跨区域、跨云的无缝数据访问和高效的集群管理。
方便扩容:无论是语言模型、图片/视频模型,还是三维模型,扩容需求始终存在,尤其是三维模型的存储和处理对扩容的需求更高。
简单的运维:存储系统应提供简便的管理界面和工具,尤其是对于三维模型的管理,运维要求更高,自动化管理和容错能力是必不可少的。
"Content-Type: application/json"
\
-d
'{
"UserId": "alice",
"Labels": ["female", "student", "tech_lover"]
}'
# 创建物品(电影)
curl -X POST http://localhost:8088/api/item \
-H
"Content-Type: application/json"
\
-d
'{
"ItemId": "inception",
"Labels": ["scifi", "thriller"],
"Categories": ["movie"]
}'
# 插入反馈(alice 喜欢 inception)
curl -X POST http://localhost:8088/api/feedback \
-H
"Content-Type: application/json"
\
-d
'[{
"UserId": "alice",
"ItemId": "inception",
"FeedbackType": "like"
0 : 000 > !eeheap -gc Number of GC Heaps: 1 generation 0 starts at 0x0000013e0f5919d8 generation 1 starts at 0x0000013e0f49a8b0 generation 2 starts at 0x0000013e09f21000 ephemeral segment allocation context: none gz-lzd.com segment begin allocated size 0000013e09 f20000 0000013e09 f21000 0000013e0 fb15b20 0x5bf4b20 ( 96422688 ) p.xydgdq.cn Large object heap starts at 0x0000013e19f21000 xydgdq.cn segment begin allocated size 0000013e19 f20000 0000013e19 f21000 0000013e211 b6f50 0x7295f50 ( 120151888 ) ... 00000143 d6850000 00000143 d6851000 00000143 db009118 0x47b8118 ( 75202840 ) Total Size: wap.yqswh.cn Size: 0x33bd0f148 ( 13888450888 ) bytes. ------------------------------ GC Heap Size: Size: 0x33bd0f148 ( 13888450888 ) bytes.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70048957/viewspace-3109580/ ,如需转载,请注明出处,否则将追究法律责任。