字符串,集合的一些方法

1.String

  1.1、toCharArray();从字符串转为字符数组(场景应用,获得某个字符串后怎么样。比如输入一串字符串,输出每个字符的出现次数)

  1.2、equals:相等是否

  1.3、subString(beginIndex,endIndex),截取字符串某段

  1.4、charAt(index),获得某个下标的字符,用在获得第一个字符啊啥的比较多

  1.5、compareTo(str)比较字符串,大小写不忽略,compareToIgnore(str)比较字符串,或略大小写

  1.6、concat(str) ,拼接字符串

  1.7、contains(str) ,是否包含某个字符串

  1.8、indexOf(str)得到下标,indexOf(index)获得字符

  1.9 isEmpty()  

  1.10 split(str) 应用可以在一些多选框,拼接成的字符串分割

  1.11  trim 忽略空格

  1.12 length() 字符长度

 

2.Map map = new HashMap();(底层:数组+链表)

  2.1、get(key) 通过key获得值

  2.2、put(key,value)  加进去在map中

  2.3、containsKey(object)   看在map中的key是包含object (应用,比如输入一串字符串,输出每个字符的出现次数,当你如果key包含就让值+1,不包含就让值为1)

  2.4、size() 集合大小

  2.5、keySet () 返回Set  Set 数组集合里面数据是唯一的不重复。(这里你可以通过返回key的值,然后循环通过key去输出你的值,配合上面每个字符输出次数)

  2.6、isEmpty()是否为空

  2.7containsValue(value)

3. Set 

  3.1、set.size() 这个就可以用在for循环了

  3.2、iterator() 迭代器  返回的是Iterator 对象,再利用Iterator中  hasNext()方法去循环,next()方法去打印

  3.3、add(Object)

  3.4、contains(object) 包含 ,也有 containsAll(集合)

  3.5、isEmpty()

 

写个例子来理解一些使用:

需求:控制台输入一串字符串,输出每个字符出现的次数。

public class DictController {
/**
* 需求,是一串字符串,要求打印出来每个字符出现的次数,从控制台输入字符串。
*/

public Map scanner(String string) {
char[] chars = string.toCharArray();

Map<String, Object> maps = new HashMap();
for (char ch : chars) {
if (maps.containsKey(String.valueOf(ch))) {
maps.put(String.valueOf(ch), (int) maps.get(String.valueOf(ch)) + 1);
} else {
maps.put(String.valueOf(ch), 1);
}
}
return maps;
}
public static void main(String[] args) {
System.out.println("请输入字符串:");
Scanner scanner = new Scanner(System.in);
String string = scanner.next();
System.out.println(string);

DictController dict = new DictController();
Map<String, Object> map = dict.scanner(string);

Set<String> set = map.keySet();
for (String str : set) {
System.out.println("key:" + str + ",value:" + map.get(str));
}
//使用迭代器来实现遍历。

}


}
posted on 2020-01-18 10:18  一叶知秋无尘  阅读(732)  评论(0编辑  收藏  举报