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. ...
随机推荐
- java-swingButton
package com.http; import java.awt.*; import java.awt.event.*; import javax.swing.*; import com.http. ...
- [置顶]
谈EXPORT_SYMBOL使用
转自:http://blog.csdn.net/macrossdzh/article/details/4601648 EXPORT_SYMBOL只出现在2.6内核中,在2.4内核默认的非static ...
- C# 外界调用方法是 方法名是string类型的解决方法
- OO易错点总结
在写子类的构造函数时,要在初始化列表中指定使用的父类的构造函数并完成其初始化,如下例: AudioBook(const string& bookname, const string& ...
- Tomcat自定义classLoader加密解密
class很好反编译,所以需要对class文件先进行加密,然后使用自己的classloader进行解密并加载. [步骤] 大概分两步: 1.对class文件进行加密 2.写解密class文件并加载的c ...
- roguelike地图的随机生成算法
如果要想自己设计一个roguelike游戏,那么需要你有一个随机地图生成,我在indienova上看到一篇文章,描述了一个roguelike算法,然后自己用unity实现了一个下. 原文地址:随机生成 ...
- LeetCode: 258 Add Digits(easy)
题目: Given a non-negative integer num, repeatedly add all its digits until the result has only one di ...
- 初识btrace
此文已由作者易国强授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1 btrace简介 BTrace是一个非常不错的java诊断工具.BTrace 中的B表示bytecode ...
- 201621123016 《Java程序设计》第七周学习总结
1. 本周学习总结 1.1 思维导图:Java图形界面总结 2.书面作业 1. GUI中的事件处理 1.1 写出事件处理模型中最重要的几个关键词. 关键词:事件源,事件监听器,事件处理方法,事件适配器 ...
- HTML基本标签元素
HTML: 超文本标记语言(HyperText Mark-up Language ) 1.作用:写网页结构 2.HTML不区分大小写,建议小写 3.文件后缀 .html 或者 .ht ...