2019.8.7全部回顾完毕

收获:搞懂了以前不理解的内容

学会了Markdown语法

1.

将首字母变大写

public class _02将首字母变大写 {
public static void main(String[] args) {
//1.截取第一个字母
String n = "myxq";
String res = n.substring(0, 1);
//2.将第一个字母变大写
String res1 = res.toUpperCase();
//2.截取第一个字母以后的内容
String res2 = n.substring(1, 4);
//3.将两边字母结合
System.out.println(res1+res2);
}
}

2.去除字符串中的空格

public static void main(String[] args) {
String a = "";
String b = null;
String c = " my xq";
//去除首尾的空格
String c2 = c.trim();
System.out.println(c2);
//去除中间的空格(实则为去掉所有的空格)
String c3 = c.replace(" ", "");
System.out.println(c3);
【my xq
myxq】

3.####设计字符串是否为空的工具类

工具类:要不设计成单例,要不设计成静态方法。

(工具类中创建对象是没有意义的,所以干脆私有化构造器)

类的命名:******utils

在别的类中调用时,类名.方法名

public class StringUtils {
StringUtils(){ }
static Boolean hasLength(String str) {
return str != null && ! "".equals(str.trim());
}
} 在别的类中调用时,
System.out.println(StringUtils.hasLength(""));

4.字符拼接上的性能比较:

String < StringBffuer < StringBuilder

但StringBffuer的安全性更高一些,原因:在append方法中存在synchronized(加锁)

5.StringBuilder的相关信息

容量:只有16个字符的容量,当容量不够时,会自动扩容。扩充成 x *2+2;

可变字符串实际上是字符数组

public class Stringbuilder {
public static void main(String[] args) {
StringBuilder s = new StringBuilder();
s.append("1315");
System.out.println(s.capacity());
}
}
【16】
public class Stringbuilder {
public static void main(String[] args) {
StringBuilder s = new StringBuilder();
s.append("15125sgfgsfgsg121315");
System.out.println(s.capacity());
}
}
【34】

删除指定位置数据

	s.deleteCharAt(2);
System.out.println(s);
【1525sgfgsfgsg121315】

链式编程

	s.append("1316").append(156.2);//append中可以加任何类型的数据
【1316156.2】

可变字符串变不可变字符串

String s2 = s.toString();

不可变字符串变可变字符串

StringBuilder s = new StringBuilder("15");

将字符串倒序输出

System.out.println(s.reverse());

字符串总结

java41的更多相关文章

  1. java41 类的高级概念

随机推荐

  1. [Luogu P2827] 蚯蚓 (巧妙的模拟)

    题面: 传送门:https://www.luogu.org/problemnew/show/P2827 Solution 看到这题,我们肯定会有一个大胆想法. 那就是直接用堆模拟这个过程. 对于q,我 ...

  2. leetcode93:insert-interval

    题目描述 给定一组不重叠的时间区间,在时间区间中插入一个新的时间区间(如果有重叠的话就合并区间). 这些时间区间初始是根据它们的开始时间排序的. 示例1: 给定时间区间[1,3],[6,9],在这两个 ...

  3. Flink的sink实战之四:自定义

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. mdp文件-Chapter4-MD.mdp

    终于到了mdp系列的第四篇,最终MD模拟的mdp文件 先上代码,md.mdp 1 title = OPLS Lysozyme MD simulation 2 ; Run parameters 3 in ...

  5. 小谢第58问:nuxt搭建企业官网

    最近公司要重构公司官网,jq+bootstrap 改为了vue,刚开始我以为用vue不是挺好的嘛,后来才发现,有于vue单页面的特性,不利于搜索引擎的抓取,因此在seo方面需要另外想办法,于是乎,就找 ...

  6. 【linux】gpio子系统

    目录 前言 linux子系统 gpio子系统 gpio子系统实战-系统调用 前言 目前不涉及驱动源码 参考链接 linux子系统 在 Linux 系统中 绝大多数硬件设备都有非常成熟的驱动框架 驱动工 ...

  7. 在Service中创建全局Dialog对话框

    需要使用到悬浮窗权限 val builder: AlertDialog.Builder = AlertDialog.Builder(this)builder.setMessage("from ...

  8. 结合实战和源码来聊聊Java中的SPI机制?

    写在前面 SPI机制能够非常方便的为某个接口动态指定其实现类,在某种程度上,这也是某些框架具有高度可扩展性的基础.今天,我们就从源码级别深入探讨下Java中的SPI机制. 注:文章已收录到:https ...

  9. 基于udp的scoket通信

    1.udp例子1 udpserver.py # udp的server,不需要进行监听也不需要建立连接 # 在启动服务之后只能被动的等待客户端发送消息过来 # 客户端发送消息的同时还会自带地址信息 # ...

  10. bWAPP----HTML OS Command Injection - Blind

    OS Command Injection - Blind 先上代码,他判断了win还是linux然后进行了ping但是结果并没有返回. 1 <div id="main"> ...