今天是周四,感觉还是没啥特别的事情发生,毕竟,如果每天都发生特别的事情那得多累啊。杭州市的应届生补助通道开启了,能拿一万块钱呢,感觉有点开心,这钱还是老老实实给老妈比较好,还欠着好多房租没还呢。JAVA基础差不多要学完了?基本的语法什么的都搞定了,那下一步该干什么呢,说不好,写那个APP感觉还是写不出来,有点太难了。那该怎么和导师开口说我写不出来啊。。。想不出该怎么说,蛋疼哦。这样吧,明天把尾巴收好,然后自己先写那个查快递的吧,这个接玩安卓的APP感觉还是太难写了。就这样,要睡觉了,明天就是周五了,又要放假了,开心。
package homework; /** * 给出一句英文句子: "let there be light" * 得到一个新的字符串,每个单词的首字母都转换为大写 */ public class Test { public static void main(String[] args) { String sentence = "let there be light"; char[] str = sentence.toCharArray(); for (int i = 0;i < str.length;i++){ if(i == 0 || Character.isLetter(str[i]) && Character.isWhitespace(str[i-1])){ str[i] = Character.toUpperCase(str[i]); } } System.out.println(str); } }
package homework; /** * 英文绕口令 * peter piper picked a peck of pickled peppers * 统计这段绕口令有多少个以p开头的单词 */ public class Test { public static void main(String[] args) { String sentence = "peter piper picked a peck of pickled peppers"; String[] str = sentence.split(" "); int sum = 0; for (int i = 0;i < str.length;i++){ if (str[i].charAt(0) == 'p'){ sum++; } } System.out.println(sum); } }
package homework; /** * 把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy */ public class Test { public static void main(String[] args) { String sentence = "lengendary"; char letter[]=sentence.toCharArray(); for (int i = 0;i < letter.length;i++){ if(i%2==0) { letter[i] = Character.toUpperCase(letter[i]); } System.out.print(letter[i]); } //也可以这么输出 String string = new String(letter); System.out.println(string); } }
package homework; /** * 把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy */ public class Test { public static void main(String[] args) { String sentence = "lengendary"; char letter[]=sentence.toCharArray(); for (int i = 0;i < letter.length;i++){ if(i == letter.length - 1) { letter[i] = Character.toUpperCase(letter[i]); } System.out.print(letter[i]); } } }
package homework; /** * 把 lengendary 最后一个字母变大写 */ public class Test { public static void main(String[] args) { String sentence = "lengendary"; char letter[]=sentence.toCharArray(); for (int i = 0;i < letter.length;i++){ if(i == letter.length - 1) { letter[i] = Character.toUpperCase(letter[i]); } System.out.print(letter[i]); } } }
package homework; /** * Nature has given us that two ears, * two eyes, and but one tongue, * to the end that we should hear and see more than we speak * 把最后一个two单词首字母大写 */ public class Test { public static void main(String[] args) { String sentence = "Nature has given us that two ears, " + "two eyes, " + "and but one tongue, " + "to the end that we should hear and see more than we speak"; int position = sentence.lastIndexOf("two"); char[] str = sentence.toCharArray(); str[position] = Character.toUpperCase(str[position]); String string = new String(str); System.out.println(string); } }
package homework; /** * 特例 * 一般说来,编译器每碰到一个字符串的字面值,就会创建一个新的对象 * 所以在创建了一个新的字符串"hello" * 但是编译器发现已经存在现成的"hello",那么就直接拿来使用,而没有进行重复创建 */ public class Test { public static void main(String[] args) { String str1 = "the light"; String str2 = new String(str1); // ==是判断内存地址是否相同 System.out.println(str1 == str2); //equals方法判断值是否相同 System.out.println(str1.equals(str2)); String string1 = "hello"; String string2 = "hello"; System.out.println(string1 == string2); } }
package homework; import java.util.Random; import java.util.Scanner; /** * String与StringBuffer的性能区别? * * 生成10位长度的随机字符串 * 然后,先使用String的+,连接10000个随机字符串,计算消耗的时间 * 然后,再使用StringBuffer连接10000个随机字符串,计算消耗的时间 * StringBuffer同理,写两个函数不知道为啥特别难看,不写了 * StringBuffer耗时18ms,String耗时335ms */ public class Test { public static void main(String[] args) { Scanner in = new Scanner(System.in); int length = in.nextInt(); int num = 10000; double startTime = System.currentTimeMillis(); String string = getString(length); for (int i = 0;i <= num;i++){ string += getString(length); } double spentTime = (System.currentTimeMillis() - startTime); System.out.println(spentTime); } private static String getString(int length){ Random random = new Random(); String string = new String(); for (int i = 0;i < length;i++){ int number = random.nextInt(3); int result = 0; switch (number){ //case0是输出数字 case 0: result = (int)(Math.random() * 10 + 48); char s = (char) result; string += s; break; //case1是输出小写字母 case 1: result = (int)(Math.random() * 26 + 97); char s1 = (char) result; string += s1; break; case 2: result = (int)(Math.random() * 26 + 65); char s2 = (char) result; string += s2; break; default: break; } } return string; } }