练习1
1.在给定的程序Lab0301.java中补充代码实现计算一个字符串中单词的数量的功能。
2.添加一个新方法
private static String getFirstWord(String input)
该方法把一个字符串作为参数,返回这个字符串的第一个单词。
3.在给定的程序Lab03.java中实现计算一个字符串中单词的数量的功能。
package practice;
import java.util.Scanner;
public class testone {
private static String Getone(String input) {
int i = input.indexOf(" ");
String b = input.substring(0,i);
return b;
}
public static void main(String[] args){
Scanner aa = new Scanner(System.in);
String s ="I love book,i really love book";
//s = " "+s+" ";
//String ts ="book";
//int num = s.split(ts).length-1;
//System.out.println(num);
System.out.println(Getone(s));
}
}
练习2
1.补充Lab0302.java,从键盘上接收一个字符串,经过ROT-13加密算法后,以下面格式显示在输出设备上:
±---------------------------------------------------------+
| 原始数据: THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG. |
| 加密数据: GUR DHVPX OEBJA SBK WHZCRQ BIRE GUR YNML QBT. |
±---------------------------------------------------------+
2.添加方法,指定加密算法的移动位数,实现ROT算法
package practice;
import java.util.Scanner;
public class testtwo {
private static String Wordx(String test) {
String password = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
String passwd = "abcdefghijklmnopqrstuvwxyz";
//StringBuffer output = new StringBuffer();
String output=new String();
for(int i=0;i<test.length();i++) {
/*String c = test.substring(i, i+1);
int temp = password.indexOf(c)%52;
String tnew = password.substring(temp+13,temp+14);
//output.append(tnew);
output = output + tnew;*/
char ch=test.charAt(i);
//Character chh = new Character(ch);
String chs = String.valueOf(ch);
if(ch == ' ') {
output = output +chs;
}else {
if(Character.isUpperCase(ch)) {
int num = password.indexOf(chs);
int nnum = (num+13)%26;
String tnew = password.substring(nnum,nnum+1);
output = output + tnew;
}else {
int num = passwd.indexOf(chs);
int nnum = (num+13)%26;
String tnew = passwd.substring(nnum,nnum+1);
output = output + tnew;
}
}
}
//return new String(output);
return output;
}
public static void displayResults(String inText,String encText) {
System.out.print("+---------");
for(int i=0;i<inText.length();i++) {
System.out.print("-");
}
System.out.println("--+");
System.out.print("| ");
System.out.print("原始数据: ");
System.out.print(inText);
System.out.println(" |");
System.out.print("| ");
System.out.print("加密数据: ");
System.out.print(encText);
System.out.println(" |");
System.out.print("+---------");
for(int i=0;i<inText.length();i++) {
System.out.print("-");
}
System.out.print("--+");
}
public static void main(String[] args){
//String paaword = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
Scanner aa = new Scanner(System.in);
System.out.println("请输入字符串:");
String s = aa.nextLine();
displayResults(s,Wordx(s));
}
}