<span style="color:#009900;">package com.itheima.test;
import java.util.HashMap;
import java.util.Map.Entry;
import java.util.TreeMap;
public class SundayDemo {
public static void main(String[] args) {
numberOne();
System.out.println(" bbcd ,除去空格后值:" + numberTwo(" bbcd "));
numberThree();
numberFour();
}
/**
* 统计大字符串出现小字符串的个数
*/
private static void numberOne(){
//大字符串
String s = "abcdhelloeurtueorhdkabdfas";
//小字符串
String key = "wervhelloas";
int count = 0;
int bIndex = 0;
while(s.indexOf(key) > -1){
count++;
bIndex = s.indexOf(key) + key.length();
if(bIndex >= s.length())break;
s = s.substring(bIndex, s.length());
}
System.out.println("出现次数:" + count);
}
/**
* 除去空格
* @param str
* @return
*/
private static String numberTwo(String str){
if(str == null) {
throw new RuntimeException("字符串为Null");
}
char [] charArray = str.toCharArray();
StringBuilder sb = new StringBuilder();
for(int i=0;i<charArray.length;i++){
if(charArray[i] != ' '){
sb.append(charArray[i]);
}
}
return sb.toString();
}
private static void numberThree(){
Integer i1 = 122;
Integer i2 = 122;
System.out.println(i1.equals(i2)); //输出true
System.out.println(i1 == i2); //输出true
Integer i3 = 128;
Integer i4 = 128;
System.out.println(i3.equals(i4)); //输出true
System.out.println(i3 == i4); //输出false,两个对象的地址不同
/*
* jdk1.5后的自动拆箱装箱操作,在进行自动拆装箱时,编译器会使用Integer.valueof()来创建Integer实例。
* 该函数远吗:
* public static Integer valueOf(int i) {
assert IntegerCache.high >= 127;
if (i >= IntegerCache.low && i <= IntegerCache.high)
return IntegerCache.cache[i + (-IntegerCache.low)];
return new Integer(i);
}
就是如果传入的int在IntegerCache.low(-128)和IntegerCache.high(127)之间,
那就尝试看前面的缓存中有没有打过包的相同的值,如果有就直接返回,否则就创建一个Integer实例。
IntegerCache.low 默认是-128;IntegerCache.high默认是127.
*/
}
/**
* 统计出现的次数
*/
private static void numberFour(){
String str = "askhdfashdfdvkloiweoibnxcvzfashdfk";
TreeMap<Character,Integer> hs = new TreeMap<Character,Integer>();
for(int i =0;i<str.length();i++){
char ch = str.charAt(i);
if(hs.containsKey(ch)){
hs.put(ch, hs.get(ch) + 1);
}else{
hs.put(ch, 1);
}
}
for(Entry<Character, Integer> ch : hs.entrySet()){
System.out.print(ch.getKey() + "[" + ch.getValue() + "]");
}
}
}
</span>
题目练习
最新推荐文章于 2023-11-28 05:19:05 发布