Scanner-String-StringBuilder-API
1.能够明确API的使用步骤
1)打开帮助文档
2)点击显示,找到索引,看到输入框
3)你要找谁?在输入框里输入,然后回车
4)看包:java.lang下的类不需要导包,其他需要
5)看类的解释和说明
6)学习构造方法
7)使用成员方法
2.能够使用Scanner类获取键盘输入的字符串
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
System.out.println("Please enter ....");
String s = sc.nextLine();
3.能够使用String类的构造方法创建字符串对象
1: String s = new String("hello");
2: String s ="hello";
3: char[] ch ={'a','b','c'};
String s1 = new String(ch);
4: char[] ch ={'a','b','c','d','e'};
String s2 = new String(ch,1,3) //第1号位置开始,数3个
4.能够明确String类的构造方法创建对象,和直接赋值创建字符串对象的区别
1: String s = new String("hello");
2: String s ="hello";
第一种方式是在通过在堆区开辟空间,引用了方法区常量池里的“hello”对象;
第二种方式是直接引用方法区常量池里的“hello”对象;
5.能够使用文档查询String类的常用方法、
1)判断功能方法:
s1.equals(s2):判断s1和s2的引用内容是否相同,如若用==则比较的是地址;
s1.euqalsIgnoreCase(s2):忽略大小写比较引用内容是否相同
s1.startsWith("abc"):是否以abc开头
s1.endsWith("abc"):是否以abc结尾
2)获取功能方法:
s.length():计算字符串长度
s.charAt(0):获取第0位置的字符
s.indexOf("wo"):获取“wo”第一次出现的索引
s.substring(1):从第1号位置字符至结尾
s.substring(3,8):从第3号位置截取字符至第7号位置
3)转换功能方法
s.toCharArray():把字符串转换为字符数组
s.toUpperCase():把字符串转换为大写
s.toLowerCase():把字符串转换为小写
4)去除空格方法
s.trim():去除字符串左右空格,但是不能去除字符串中间的空格
5)分割功能方法
s.split(","):按照“,”分割字符串
6)替换功能方法--支持正则
s.replaceOf("str","rts"):使用rts替换原str
7)String类对正则的支持
public boolean matches(String regex)
public String replaceAll(String regex,String replacement)
public String replaceFirst(String regex,String replacement)
public String[] split(String regex,int limit)
public String[] split(String regex)
6.能够使用类名作为形式参数和返回值
1)类名作为形式参数案例:需要的其实是该类的对象
class Test {
public void show(Person p){
p.eat();
}
}
2)类名作为返回值案例:返回的其实是该类的对象
class Test {
public Person show(){
Person p = new Person("小王");
return p;
}
}
7.能够使用StringBuilder类的添加功能和反转功能
sb.append("12"):拼接
sb.reverse():反转
sb.capacity():理论长度
sb.length():实际长度
sb.toString():转换为字符串
public class Demo02 {
public static void main(String[] args) {
int[] arr = { 12, 34, 4, 5 };
String s = arrToString(arr);
System.out.println(s);
String s1 = myReverse(s);
System.out.print(s1);
}
// arrToString
public static String arrToString(int[] arr) {
StringBuilder s = new StringBuilder();
s.append("[");
for (int i = 0; i < arr.length; i++) {
if (i == arr.length - 1) {
s.append(arr[i] + "]");
} else {
s.append(arr[i] + ",");
}
}
String result = s.toString();
return result;
}
//reverse
public static String myReverse(String s) {
StringBuilder builder = new StringBuilder(s);
builder.reverse();
String result = builder.toString();
return result;
}
}
toCharArray()
Arrays.toString()
toString()
Scanner-String-StringBuilder-API的更多相关文章
- Java基础学习总结(65)——Java中的String,StringBuilder和StringBuffer比较
字符串,就是一系列字符的集合. Java里面提供了String,StringBuffer和StringBuilder三个类来封装字符串,其中StringBuilder类是到jdk 1.5才新增的.字符 ...
- 深入源码剖析String,StringBuilder,StringBuffer
[String,StringBuffer,StringBulider] 深入源码剖析String,StringBuilder,StringBuffer [作者:高瑞林] [博客地址]http://ww ...
- String, StringBuilder, StringBuffer问题
1. 区别 String为字符串常量,而StringBuilder和StringBuffer都是字符串变量,其中StringBuilder线程非安全,StringBuffer线程安全. 每次对 Str ...
- String StringBuilder 包装类
1. String 概述 程序中直接写上双引号的字符串就在字符串常量池中,new的不在池当中 java6之前常量池在方法区,java7以后将字符串常量池放在堆中 因为字符串是对象,应该在堆中 相同的字 ...
- String StringBuilder StringBuffer区别
String StringBuilder StringBuffer String类是final类,不可以被继承,且它的成员方法也是final方法,当一个字符串对象进行操作操作时,任何的改变不会影响到这 ...
- difference among String,StringBuilder,StringBuffer
difference among String,StringBuilder,StringBuffer String常用构造函数 String(byte[] bytes) String(byte[] b ...
- Effective STL 学习笔记 Item 16:vector, string & C API
有时需要支持 C 的接口,但这并不复杂. 对于 vector 来讲, \(v[0]\) 的地址 \(\&v[0]\) 即可作为数组指针传递给 C API: 1: // Legacy C API ...
- 谈String,StringBuilder,StringBuffer随笔
一.谈谈三者在实现上的区别. (1)先看String 方法,实现了Serializable, Comparable, CharSequence三个接口 package java.lang; imp ...
- String,StringBuilder性能对照
import java.util.Date; import java.util.UUID; /** * 測试String,StringBuilder性能,推断什么时候改用String,什么时候该用S ...
- JDK源码分析系列---String,StringBuilder,StringBuffer
JDK源码分析系列---String,StringBuilder,StringBuffer 1.String public final class String implements java.io. ...
随机推荐
- Win32编程点滴3 - 简单ActiveX控件的使用
虽然这里一片的.net气氛,到处充斥着像MVC.WPF.WorkFlow.LINQ等各种niubility的术语.但我们使用的Windows还是由COM技术主宰着:我们在选择日常使用的软件时,也会避免 ...
- bzoj1319
数论 这个幂指数很难搞,那么我们取个log 去取log得有底数,那么自然这个底数能表示出所有的数 原根满足这个性质 那么我们求出原根,再去log 变成k*ind(x)=ind(a) (mod phi( ...
- 20个Flutter实例视频教程-第11节: 一个不简单的搜索条-2
博客地址: https://jspang.com/post/flutterDemo.html#toc-1b4 视频地址:https://www.bilibili.com/video/av3970929 ...
- Windows下启动停止Oracle11g服务-为解决系统变慢而生
我们拿Oracle 11g作为例子. 首先在“开始=〉运行”中输入“services.msc”,按回车,进入“服务”控制台, 将 Oracle ORCL VSS Writer Service.Orac ...
- Jmeter + Junit
在使用jmeter中Junit的功能之前,最好将接口以手动的方式调通,可以参考 Jmeter之HTTP Request 下面开始讲一下如何使用Junit功能 1. 编写测试类 JmeterJunit ...
- Android NDK开发指南(二)Android.mk文件
http://www.cnblogs.com/yaozhongxiao/archive/2012/03/06/2382225.html 1. 概述 Android.mk文件是用来描述build sy ...
- andriod ndk配置
r7及以后版本不需要再配置cywin ,留影 先在path中配置ndk的环境变量,位置为ndk的根目录,也可在图5中的位置配置环境变量
- Bug调试(lldb)
原文网址:http://www.cnblogs.com/Twisted-Fate/p/4760156.html 今天博主有一些Bug调试的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步. X ...
- 用BeautifulSoup简单爬取BOSS直聘网岗位
用BeautifulSoup简单爬取BOSS直聘网岗位 爬取python招聘 import requests from bs4 import BeautifulSoup def fun(path): ...
- sequence(2018.10.23)
建出差分序列,可以发现最早出现的回文串就是答案,自己想想就懂了. \(O(N)\)找出回文串就好了,字符串\(hash\)或者\(manacher\)都能在合法时间内得到答案. #include< ...