懼怕與人的衝突,本質是不知如何應對,解決的辦法不是逃避,而是學習高手如何應對【人是具有連續性的生物,行爲可預測,高手的方法可信度高】。java
不要小看任何你未搞清楚的事物。app
書寫一個類,類名爲Tencent;oop
類中有一個方法,方法名delDel;學習
給定一個字符串,若是字符串「del」從索引1開始出現
返回一個新字符串,其中新字符串中「del」已被刪除。 不然,返回字符串不變。code
方法調用 | 指望值 |
---|---|
delDel("adelbc") | "abc" |
delDel("adelHello") | "aHello" |
delDel("adedbc") | "adedbc" |
public class Tencent{ public String delDel(String str) { if((str.length() >= 4) && (str.substring(1,4).equals("del"))) { return "" + str.charAt(0) + str.substring(4,str.length()); } else { return str; } } }
注意區分:equals() 與 ==索引
書寫一個類,類名爲Tencent;字符串
類中有一個方法,方法名countYZ;get
給定一個字符串,找出裏面以「y」或者「z」結尾的單詞的個數,也就是說,跟在「y」或者「z」後面的字符不是英文單詞。
「y」在「heavy」中和「z」在「fez」中計數,而「y」在「yellow」中不計數,(不區分大小寫)string
方法調用 指望值
countYZ("fez day") 2
countYZ("day fez") 2
countYZ("day fyyyz") 2it
public class Test01 { public int countYZ(String str) { int count = 0; String temp = str.toUpperCase(); String[] words = temp.split("\\W|\\d"); for (String word : words) { if(word.endsWith("Z")||word.endsWith("Y")) { count++; } } return count; } }
書寫一個類,類名爲Tencent;
類中有一個方法,方法名gHappy;
若是字符串中的’g’的相鄰左邊或者右邊有另一個’g’,則’g’在這個字符串中是happy的,
若是字符串中全部的’g’都是happy的則返回true,不然返回false。
方法調用 指望值
gHappy("xxggxx") true
gHappy("xxgxx") false
gHappy("xxggyygxx") false
public class Test01 { public boolean gHappy(String str) { if(str.length()==0) { return false; } String regex = "gg+"; return !(str.replaceAll(regex, "").contains("g")); } }
package com.baidu; public class Test01 { public boolean gHappy(String str) { if(str.length()==1&&str.equals("g")||str.length()==0) { return false; } String temp = "a"+str+"a"; for (int i = 1; i < temp.length() - 1; i++) { if(temp.charAt(i-1)!='g'&&temp.charAt(i)=='g'&&temp.charAt(i+1)!='g') { return false; } } return true; } }
書寫一個類,類名爲Tencent;
類中有一個方法,方法名maxBlock;
給定一個字符串,返回該字符串中連續出現個數最多的字符的數量。
方法調用 指望值
maxBlock("hoopla") 2
maxBlock("abbCCCddBBBxx") 3
maxBlock("") 0
package com.baidu; import java.util.HashMap; public class Test01 { public int maxBlock(String str) { int max = 0; HashMap<Character, Integer> hm = new HashMap<>(); int count = 1; for (int i = 0; i < str.length() - 1; i++) { char c1 = str.charAt(i); char c2 = str.charAt(i + 1); hm.put(c1, count); if(c1 == c2) { count++; if(count > hm.get(c1)) { hm.put(c1, count); } } else { count = 1; hm.put(c2, count); } for (Character c : hm.keySet()) { if(hm.get(c) >= max) { max = hm.get(c); } } } return max; } }