1.分清char和String的区别,char只能是一个字符,并且只能用单引号,String可以是很多字符,用双引号。java中一切皆对象,比如对于int类型来说,他不是一个对象,为此java中为他提供了一个Integer的封装,对于每一个数据类型,java中都提供了对应对象的封装。所以各自都有其属性和方法,java为了效率提高。保留了基本数据类型。对于其基本类型对应的封装对象,他们之间有方法可让其互相转化。
String也是java中的一个类,他有很多的方法。他位于java中java.lang中。方法有计算字符串的长度。连接字符串,比较字符串,提取字符串等等。具体方法使用如下(一部分):
package com.tdq.java1; public class Str { public static void main(String[]args){ String str="我爱中国"; String str1=new String("我爱中国"); System.out.println(str.length()); if(str==str1){ System.out.println("相同"); }else{ System.out.println("不相同"); } if(str.equals(str1)){ System.out.println("相同"); }else{ System.out.println("不相同"); } String a1="Java"; String a2="java";//区分大小写 if(a1.equals(a2)){ System.out.println("相同"); }else{ System.out.println("不相同"); } if(a1.equalsIgnoreCase(a2)){//不区分大小写 System.out.println("相同"); }else{ System.out.println("不相同"); } System.out.println(a1.toUpperCase());//都转换为大写; System.out.println(a1.toLowerCase());//都转换为小写; System.out.println(a1+a2);//字符串连接 System.out.println(a1.concat(a2));//字符串连接 System.out.println(a1.indexOf(a2));//在a1中查找有没有a2的字符串;返回-1没有,返回1表示有返回0表示相等 System.out.println(a1.indexOf("va"));//在a1中查找有没有a;有相同的则找到了就不会往前找。如果从后面开始找则用另外一个方法 if(a1.indexOf("a")==-1){ System.out.println("找不到"); } System.out.println(a1.substring(3));//提取第三个 System.out.println(a1.substring(2, 4));//从第2个取到第四个 String a3=" adfd "; System.out.println(a3.trim());//去掉前后空格 中间有空格不会去掉 System.out.println(a1.startsWith("J"));//是不是以J开始; System.out.println(a1.endsWith("A"));//是不是以A结尾; System.out.println(a1.charAt(0));//拿到第0个字符; System.out.println(a1.contains("a"));//是否包含a } }
2、直接在main方法中实现以下程序,要求根据用户的输入计算累加的和;比如输入10,则计算1+2+3...+10的和
如:
请输入要累加数:100
和是:5050
package com.tdq.java1; import java.util.*; public class Sum { public static void main(String[]args){ Scanner scanner=new Scanner(System.in); System.out.println(" 请输入要累加数:"); int index=scanner.nextInt(); int sum=0; for(int i=1;i<=index;i++){ sum+=i; } System.out.println(" 和是:"+sum); } }
3、定义一个Teacher类,包含学生姓名和学生年龄两个属性,通过控制台输入姓名和年龄,并输出。
如
姓名:张三
年龄:12
输出:
你好 张三,你的年龄是:12 .
package com.tdq.java1; import java.util.*; public class Sum { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println(" 姓名:"); String name=scanner.nextLine(); System.out.println("年龄:"); int age=scanner.nextInt(); System.out.println(" 你好 "+name+",你的年龄是:"+age); } }
4.定义一个类Cal。在类中定义一个方法int max(int 【】nums)用于求数组中的最大数。在main方法中调用此方法。并测试。等待用户输入5个数。输出最大值。如输入5个数字:1 2 3 4 5;最大值为5;
package com.tdq.java1; import java.util.*; public class Sum { public int max(int [] nums){ int max=nums[0]; for(int i=1;i<nums.length;i++){ if(max<nums[i]){ max=nums[i]; } } return max; } public static void main(String[] args) { Scanner scanner=new Scanner(System.in);// Sum cal=new Sum(); int nums[]=new int[5]; System.out.println("请输入5个数字:"); for(int i=0;i<nums.length;i++){ nums[i]=scanner.nextInt(); } //调用 int result=cal.max(nums); System.out.println("最大值是:"+result); } }
5、直接在main函数里实现以下程序,程序输出1+2=? ,等待用户输入计算结果,如果输错提示用户继续输入,直到正确为止。
(提示,使用死循环,通过break退出)
如:
1+2=
输入:4
对不起,错误请重新输入。
6
对不起,错误请重新输入。
3
恭喜,正确
package com.tdq.java1; import java.util.*; public class Exe1 { public static void main(String[]args){ Scanner scanner=new Scanner(System.in); System.out.println("1+2=?"); while(true){ int a=scanner.nextInt(); if(a==3){ System.out.println("恭喜!正确"); break; }else{ System.out.println("对不起,输入错误,请重新输入"); } } } }
6、直接在main函数里实现程序:等待用户的输入5个数字,从小到大的输出5个数
提示:先定义一个数组,把输入的内容放在数组中。再对数组进行排序。
package com.tdq.java1; import java.util.*; public class Sum { public int max(int [] nums){ int max=nums[0]; for(int i=1;i<nums.length;i++){ if(max<nums[i]){ max=nums[i]; } } return max; } public static void main(String[] args) { Scanner scanner=new Scanner(System.in);// Sum cal=new Sum(); int nums[]=new int[5]; System.out.println("请输入5个数字:"); for(int i=0;i<nums.length;i++){ nums[i]=scanner.nextInt(); } //调用 int result=cal.max(nums); Arrays.sort(nums); for(int i=0;i<nums.length;i++){ System.out.print(nums[i]+" "); } System.out.println("最大值是:"+result); } }
7、直接在main函数里实现以下程序:
程序输出1+2=? ,等待用户输入计算结果,如果输错提示用户继续输入,用户可以有5次机会。
如果5次都输错那么程序就退出,并提示用户回答失败。如果用户在5次内回答正确,则提示用
户回答正确了。
(提示,使用死循环,通过break退出)
如:
1+2=
输入:4
对不起,错误请重新输入,你还有4次机会
6
对不起,错误请重新输入,你还有3次机会
3
恭喜,正确
程序退出。
package com.tdq.java1; import java.util.*; public class Exe1 { public static void main(String[]args){ Scanner scanner=new Scanner(System.in); System.out.println("1+2=?"); int b=4; while(true){ int a=scanner.nextInt(); if(a==3){ System.out.println("恭喜!正确"); break; }else{ System.out.println("对不起,输入错误,请重新输入"); System.out.println("你还有"+b+"次机会"); b--; if(b<0){ break; } System.out.println("程序退出"); } } } }
8.编写Java程序,完成以下功能。
(1)声明一个名为str的StringBuffer对象,并赋初始值为zdDongFang
(2)使用append()方法连接字符串"xueyuan"和"1201",并打印。
(3)打印出最后一个字符。
(4)在第二个字符后面插入字符"hello"。
(5)把最后的四个字符串删掉。
package com.tdq.java; public class Run { public static void main(String[]aargs){ StringBuffer str=new StringBuffer("zdDongFang"); System.out.println(str); System.out.println(str.append("xueyuan1201")); System.out.println(str.charAt(20)); System.out.println(str.insert(2, "hello")); System.out.println(str.delete(22, 26)); } }
9、字符串查找练习,先要求用户输入一段原字符串,然后再输入一段要查找的字符串,如果原字符串包含要查找的字符串,则输入“正确”,否则输出错误
如:
原字符串:abcdefg
要查找的字符串:cde
输出:正确
package com.tdq.java; public class StringFind { public static void main(String[]args){ String str="abcdefg"; System.out.println(str.indexOf("cde")); if(str.indexOf("cde")==2){ System.out.println("正确"); } } }
10、使用Math函数计算一下算式
(1)cos(45)+cos(45)
(2) 3的平方加上8的开方的和是多少?
(3)求方程2X*X+5*X+2=0的解是多少
package com.exe2; import java.util.Scanner; public class Exe3 { public static void main(String[] args) { System.out.println(Math.cos(45) + Math.cos(45)); System.out.println(Math.pow(3, 2) + Math.sqrt(8)); // 第三题,一元二次方程:ax^2+bx+c=0 // (3)求方程2X*X+5*X+2=0的解是多少 double a = 2; double b = 5; double c = 2; System.out.println(((-b) + Math.sqrt(Math.pow(b, 2) - 4 * a * c)) / (2 * a)); System.out.println(((-b) - Math.sqrt(Math.pow(b, 2) - 4 * a * c)) / (2 * a)); } }
11、由系统随机生成两位数,并记录在int num1和int num2中,要求用户输入这个数的和,如果用户输入成功就显示正确。
否则显示错误,用户有5次输入的机会,5次都计算错误,系统将会退出,并显示计算错误信息。
如系统随机生成了 23 45 两个数。
系统显示 : 23+45=?
请输入: 4
计算错误,你还有4次机会
请输入: 68
恭喜计算正确。
package com.exe2; import java.util.Scanner; public class Exe4 { public static void main(String[] args) { // 生成两个两位数随机数 0.99999 0.01 0.001 10~99 int num1 = (int) (Math.random() * 90) + 10; int num2 = (int) (Math.random() * 90) + 10; System.out.println(num1 + "+" + num2 + "=?"); // 获得用户的输入 Scanner sc = new Scanner(System.in); int count = 5; while (count > 0) { int input = sc.nextInt(); // 判断对错 int result = num1 + num2; if (input == result) { System.out.println("正确"); break; } else { count--; System.out.println("计算错误,你还有" + count + "次机会"); } } } }
12.数学类
package com.stu3; public class MathStu { public static void main(String[] args) { System.out.println(Math.PI); System.out.println(Math.abs(-100)); System.out.println(Math.floor(100.9)); System.out.println(Math.ceil(100.1)); System.out.println(Math.round(100.3)); System.out.println(Math.max(100, 30)); System.out.println(Math.min(100, 30)); System.out.println(Math.pow(2, 3)); System.out.println(Math.sqrt(9)); //0~1 System.out.println(Math.random()); //0~100 //10~100 System.out.println((int)(Math.random()*100)); System.out.println((int)(Math.random()*100)); } }