今天是周四,感觉还是没啥特别的事情发生,毕竟,如果每天都发生特别的事情那得多累啊。杭州市的应届生补助通道开启了,能拿一万块钱呢,感觉有点开心,这钱还是老老实实给老妈比较好,还欠着好多房租没还呢。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;
}
}
京公网安备 11010502036488号