java第二次作业 数组和String类

(一)学习总结

1.equals()是String类中判断两个字符串是否相等的方法,equals方法与 = = 的区别在于equals方法比较的是String对象中的字符串内容是否相等,而 = = 比较的则是内存地址是否相同。

public class Test {
	public static void main(String[] args) {
		String str1 = "abc" ;
		String str2 = new String("abc") ;
		System.out.println("str1与str2 == 比较结果 ----->"+(str1==str2)) ;
		System.out.println("str1与str2 equals 比较结果 ----->"+(str1.equals(str2))) ;
	}

}


2.构造方法指的是一段可以重复调用的代码,方法在java中的定义可以使用多种形式,若想在main主方法中直接调用,则必须添加static关键字。
方法的重载一定是在参数类型或个数不同,返回类型不同不是方法的重载。
不能通过编译,Foo方法与Foo类重名。
3.打印结果为不等于0.3。精度不同无法计算,改为BigDecmal 再计算。
4.```
public class Test {
public static void main(String[] args) {
MyClass arr=new MyClass();
arr.value=100;
}
}
class MyClass{
public int value=1;
}

5.应该使用StringBuffer类。在StringBuffer中能够直接对字符串指定位置进行操作,提高代码性能。
6.在String类中有各种方法能够对字符串进行操作,熟练掌握常用方法。StringBuffer类能够更方便对某个位置的字符进行操作。
###(二)实验总结
1.评分系统:一共10个评委,满分10分,假设有5个选手,分别由评委打分,去掉一个最高分和一个最低分后的平均分为该选手得分,将选手的得分从高到低进行输出。定义适当的方法。
程序设计思路:定义数组分别存放每个选手的成绩以及所有选手的平均成绩,定义求出最大值,最小值,平均值的方法
2.Email验证:在各种应用中,需要对用户输入的email地址进行验证,编写一个方法,判断一个email地址是否有效。(判断条件:A:@和.同时存在 B: @在.之前 C: 不能@开头 D: 以com|cn|net|gov|edu|org结尾 )
程序设计思路:调用indexOf方法找到“@”和“.”的位置并比较位置顺序,调用endsWith方法查看email地址结尾是否正确,输出测试结果。
3.统计文件:输入一个字符串,包含各种文件类型的文件名。文件名之间用“,”分隔,要求将各个文件名的首字母大写后分别输出,并统计各种类型文件的文件个数。
程序设计思路:使用split方法将字符串拆分存放到一个String数组当中,使用Subsring截取出文件扩展名字符串存放到数组当中,设置一个整型数组存放文件类型的数量
问题:只能计算第一个文件类型的文件数量
解决方案:循环比较是内存循环的初始应该为外层循环初始值加一
4.身份证识别:公民身份证号码由十八位数字组成。从左至右依次为:六位地址码,八位出生日期码,三位顺序码和一位校验码。顺序码的奇数分配给男性,偶数分配给女性。编写一个识别身份证基本信息的小工具,输入一个居民身份证号,则输出居民所属省份(直辖市、自治区),生日(格式:xxxx-xx-xx)和性别信息。
程序设计思路:地址:设置一个二维数组存放省份信息,使用charAt提取出身份证号的地址字符,转为int型根据下标找到相应的地址信息
生日:使用substring截取生日字符串转化为字符数组,输出
性别:使用substring截取性别字符,equals比较输出性别信息
问题:地址信息输出时提示下标溢出
解决方案:类型转化是ascll码值不同,应该减去0
###(三)代码托管
https://git.oschina.net/hebau_cs15/Java-CS02sqr.git
![](http://images2015.cnblogs.com/blog/1081538/201703/1081538-20170328134211951-6782112.png)

posted on 2017-03-28 13:42  宋奇蕊  阅读(237)  评论(1编辑  收藏  举报

导航