空字符串怎么表示

人气:261 ℃/2023-02-04 17:18:58

说起C语言,很多程序猿一定熟悉的不能再熟悉了,C语言作为普遍度最高的编程语言,其实并不是很难理解,只要去学就不会觉得那一大堆堆的代码像天文数字了。在C语言中,字符串是非常常见的,很多小伙伴也知道该怎么输入和输出,那么如果是空字符串呢?该如何表示呢?

空字符的ASCii编码为0,表示为'' 或者short型的0值,

最常见的用途是识别字符串的结尾,只要读取字符串,读到这个字符后会自动结束字符串的识别。这也是为什么很多编程教程中提到的,为什么要在尾部追加''字符作为结束符。如果不追加这个字符,极有可能在打印字符串的时候,出现很多乱码。

1 在c语言中空字符用''表示

2 ''对应的整型值是0,所以给一个字符变量赋值为空字符时,以下两种都是可以的

以上就是小编今天的分享了,大家是不是已经知道空字符串该用什么来表示了呢?

java空字符串怎么表示

Java 字符串拼接,去首尾,判空,类型转换

去掉首尾空白字符



使用trim()方法可以移除字符串首尾空白字符。



空白字符包括空格,\t,\r,\n:



String s = "\t \u3000 hello \t \n \r";System.out.println(s.trim());return " hello"123



注意:trim()并没有改变字符串的内容,而是返回了一个新字符串。而且trim 不会删除中文字符的空格。要想删掉中文的空格,需要使用strip()



String s = "\t \u3000 hello \t \n \r";System.out.println(s.strip());return "hello"123



判空



String还提供了isEmpty()和isBlank()来判断字符串是否为空和空白字符串:



isEmpty 根据字符串是否为空



isBlank 根据字符串是否为空白字符串 包括 \n \t \r



类型转换



任意类型转换为字符串:



要把任意基本类型或引用类型转换为字符串,可以使用静态方法valueOf()。这是一个重载方法,编译器会根据参数自动选择合适的方法.



String.valueOf(123); // "123"String.valueOf(45.67); // "45.67"String.valueOf(true); // "true"String.valueOf(new Object()); // 类似java.lang.Object@636be97c1234



字符串转换其他类型:



视情况而论



int n1 = Integer.parseInt("123"); // 123int n2 = Integer.parseInt("ff", 16); // 按十六进制转换,255boolean b1 = Boolean.parseBoolean("true"); // trueboolean b2 = Boolean.parseBoolean("FALSE"); // false//String和char[]类型可以互相转换char[] cs = "Hello".toCharArray(); // String -> char[]String s = new String(cs); // char[] -> String123456789



从String的不变性设计可以看出,如果传入的对象有可能改变,我们需要复制而不是直接引用





缓冲字符串StringBuilder:



如果直接拼接字符串,是可以的,但是,在循环中,每次循环都会创建新的字符串对象,然后扔掉旧的字符串。这样,绝大部分字符串都是临时对象,不但浪费内存,还会影响GC效率。



为了能高效拼接字符串,Java标准库提供了StringBuilder,它是一个可变对象,可以预分配缓冲区,这样,往StringBuilder中新增字符时,不会创建新的临时对象:



使用 stringBuilder 在拼接字符串的同时可以减少内存的占用



StringBuilder sb = new StringBuilder();for (int i = 0; i < 1000; i ) { sb.append(i); sb.append("- "); if ( i % 10 ==0){ sb.append("\n"); } }System.out.println(sb.toString());123456789



总结字符串拼接的三种方式:





// 拼接字符串 System.out.println("-------------------------------"); String[] names = {"Bob", "Alice", "Kim"}; StringBuilder stringName = new StringBuilder(); stringName.insert(0, "Hello "); for (String s: names){ stringName.append(s).append(", "); } stringName.delete(stringName.length() - 2, stringName.length()); stringName.insert(stringName.length(), "!"); System.out.println(stringName.toString()); System.out.println("-------------------------------"); return --> Hello Bob, Alice, Kim!123456789101112131415



使用这种方式,就不能对操作限制符了, 但其他操作还是很友好的。





如果我们还是按照之前的例子, 重新写一个 StringJoiner



// 使用StringJoiner String[] names = {"Bob", "Alice", "Kim"}; StringJoiner sb = new StringJoiner(", ", "Hello ", "!"); for (String s: names){ sb.add(s); } System.out.println(sb.toString());1234567



注意一点, StringJoiner() 可以加分隔符, 开头字符串, 和尾部字符串。



转发 关注 私信我 回复 头条666 领取资料

推荐

首页/电脑版/网名
© 2026 NiBaKu.Com All Rights Reserved.