JAVA语言基础知识点总结及应注意问题.doc
《JAVA语言基础知识点总结及应注意问题.doc》由会员分享,可在线阅读,更多相关《JAVA语言基础知识点总结及应注意问题.doc(12页珍藏版)》请在咨信网上搜索。
JAVA语言基础知识点总结和应注意问题——(字符、数组等基本语法) String String字符串赋值 String s1=”abc”+”123”;(用+号连接时正确的) String s2=new String(s1); String s3=new String(“abc”); String s4=new String();//创建空串 int k=s1.length(); 表示一个字符串的长度 ——String类构造函数: 构造函数 详细解释 实例 public Sring() 该构造函数用于创建一个空的字符串常量。 Eg:String s=new String(); public String(String value) 该构造函数用于根据一个已经存在的字符串函数常量来创建一个新的字符串常量,该字符串的内容和已经存在的字符串常量一致。 Eg: String s1=new String(“abc”); String s2=new String(s1); String(byte[] bytes, String charsetName); 构造一个新的String,方法是使用指定的字符集解码指定字节数组。 ——一般在浏览器上传非英语字符时使用,以免出现乱码。 Eg:String s=new String(“字符的秘密”); String s5=new String(s.getBytes(“GBK”), “Unicode/UTF-8”);//两者必须相对应 public String(char value[]) 该构造函数用于根据一个已经存在的字符数组来创建一个新的字符串常量。 Eg:char chars[]={‘a’, ‘b’, ‘c’}; String s3=new String(chars); public String(StringBuffer buffer) 该构造函数用于根据一个已经存在的StringBuffer对象来创建一个新的字符串常量。 Eg:StringBuffer sb=new StringBuffer(“abc”); sb.append(“字符串”); String sb1=new String(sb); ——关于构造函数验证程序如下: public class chapter03_1 { public static void main(String args[]) { //常见字符串赋值方法 String s1="abc"; String s2="abc"+"def"; String s3=s1+s2; String s4=s1+"abc"; //使用public String(String value)构造函数 String s5=new String("abcdef"); String s6=new String(s5); //使用public String()构造函数 String s7=new String(""); //使用 String(byte[] bytes, String charsetName)构造函数 //String s8= new String(s7.getBytes("GBK"), "Unicode"); //使用public String(char value[])构造函数 char[] chars={'a','b','c'}; String s9=new String(chars); //使用public String(StringBuffer buffer)构造函数 StringBuffer s11=new StringBuffer("abc"); s11.append("def"); String s12=new String(s11); //打印输出结构 System.out.println("s1="+s1); System.out.println("s2="+s2); System.out.println("s3="+s3); System.out.println("s4="+s4); System.out.println("s5="+s5); System.out.println("s6="+s6); System.out.println("s7="+s7); System.out.println("s9="+s9); System.out.println("s11="+s11); System.out.println("s12="+s12); } } ——结果如下: s1=abc s2=abcdef s3=abcabcdef s4=abcabc s5=abcdef s6=abcdef s7= s9=abc s11=abcdef s12=abcdef ——String类对象的常用操作及方法 (在java中,String类包含有50多个方法来实现字符串的各种操作) ※ 在任何字符串中所引的位置均从0开始算起,索引位置在字符串中是不变的, 不会因从前数或者从后搜索而改变。 函数 详细解释 char charAt(int index) 返回指定索引处的char值 int compareTo(String anotherStr) 按字典顺序比较两个字符串 int compareToIngnoreCase(String str) 不考虑大小写,按字典顺序比较两个字符串 Eg:pareTo(s1); 批注:返回的类型为int型,返回的是(s-s1)ASCII码的相减值,s-s1顺序不能颠倒;若返回值为0,则表示两字符串相等。 String concat(String str) 将制定字符串联到此字符串的结尾。等同于“+” boolean endsWith(String suffix) 测试此字符串是否以指定的后缀结束 boolean startsWith(String prefix) 测试此字符串是否以指定的前缀开始 boolean equals(Object anObject) 比较此字符串与制定的对象 boolean equalsIgnoreCase(String anotherString) 将此String与另一个String进行比较,不考虑大小写 Eg:s.equals(s1); 批注:效果同compareTo一致但是返回类型不一致 int hashCode() 返回此字符串的哈希码 int indexOf(String str) 返回第一次出现的指定的子字符串在此字符串中的索引位置 int indexOf(String str, int fromIndex) 从指定的索引处开始进行向后搜索,返回第一次出现的指定子字符串在此字符串中的索引 int lastIndexOf(String str) 返回最后一次出现的指定字符串在此字符串中的索引 int lastIndexOf(String str, int fromIndex) 从指定的索引位置开始进行向后搜索,返回最后一次出席那的制定字符串在此字符串中的索引 int length() 返回字符串的长度 String replaceFirst(String regex, String replacement) 该方法用字符串replacement的内容替换当前字符串中遇到的第一个和字符串regex相一致的子串,并将产生的新字符串返回 String replaceAll(String regex,String replacement) 该方法用字符串replacement的内容替换当前字符串中遇到的所有和字符串regex相一致的子串,并将产生的新字符串返回 String[] split(String regex) 根据给定的字符串来拆分此字符串,得到一个字符串数组 String substring(int beginIndex) String substring(int beginIndex,int endIndex) 返回一个新的字符串,它是此字符串的一个子字符串 String toLowerCase() 把字符串转换为小写 String toUpperCase() 把字符串转换为大写 String trim() 去掉字符串两端的空格 Static String valueOf(xxx b) 把其他类型变量转换成字符串 ——关于String 类对象的常用操作及方法验证代码如下: public class Chapter3 { public static void main(String[] args) { String s1=" abcwD我们的c秘密 我们的秘密 "; String s2="abcWd我们的秘密"; // String charAt(int index) System.out.println("返回s1字符串指定的索引处的char值是:"+s1.charAt(0)); //int compareTo/compareToIgnoreCase(String anotherStr) //使用CompareTo函数返回两字符串第一个不相同字符ASCII码的差值 System.out.println("s1和s2用compareTo比较结果是:"+pareTo(s2)); System.out.println("s1和s2用compareToIngnoreCase不考虑字母大小比较结果是:"+pareToIgnoreCase(s2)); //String concat(String anotherStr) System.out.println("s1字符串与s2字符串连接的新字符串是:"+s1.concat(s2)); //boolean startsWith/endsWith(String fix) System.out.println("s1字符串是否以指定的字符串开始,返回布尔值::"+s1.startsWith("abc")); System.out.println("s1字符串是否以指定的字符串结束,返回布尔值::"+s1.endsWith("秘")); //boolean equals/equalsIgnoreCase(String anotherStr) System.out.println("s1和s2用equals比较两字符串是否相等,返回布尔值:"+s1.equals(s2)); System.out.println("s1和s2用equalsIgnoreCase不考虑大小写比较两字符串是否相等,返回布尔值:"+s1.equalsIgnoreCase(s2)); // int hasdCode() System.out.println("返回s1字符串的哈希码,返回值是数值型:"+s1.hashCode()); //int indexOf(String str) //int inedexOf(String str, int fromIndex) //在任何字符串中所引的位置均从0开始算起,索引位置在字符串中是不变的,不会因从前数或者从后数而改变 System.out.println("返回第一次出现的指定子字符在此字符串中的索引位置:"+s1.indexOf("c")); //此题目中从指定的索引位置开始数,但是该字符的索引位置还是从头开始的 System.out.println("返回从指定的索引位置开始,返回第一次出现的指定子字符在此字符串中的索引位置:"+s1.indexOf("c",3)); //int lastIndexOf(String str) //int lastIndexof(String str,int fromIndex) //只是开始索引的方向变了,每个字符在此字符串中的索引位置是固定的 System.out.println("返回最后一次出现的制定字符串在此字符串中的索引位置: "+s1.lastIndexOf("c")); System.out.println("返回从指定的索引位置开始向后搜索,返回第一次出现的指定字符在此字符串中的索引位置:"+s1.lastIndexOf("c",7)); //int length() System.out.println("返回s1字符串的长度: "+s1.length()); //String replaceFirst(String regex. String replacement) //String replaceAll(String regex, String replacement) System.out.println("使用replaceFirst方法用子字符串替代当前字符串中遇到第一个指定的子字符串: "+s1.replaceFirst("我","你")); System.out.println("使用replaceAll方法用子字符串替代当前字符串中遇到所有指定的子 字符串: "+s1.replaceAll("我","你")); //String[] split(String regex) System.out.println("使用split方法用指定的子字符串来拆分此字符串,得到一个字符串数 组: "+s1.split("的")[0]+" *** "+s1.split("的")[1]+" *** "+s1.split("的")[2]); //指出开始的索引位置,求得子字符串 //String substring(int beginIndex) //String substring(int beginIndex,int endIndex) System.out.println("返回一个新的字符串,它是此字符串的一个子字符窜: "+s1.substring(2)); System.out.println("返回一个新的字符串,它是此字符串的一个子字符窜: "+s1.substring(2,5)); //String toLowerCase/toUpperCase() System.out.println("把字符串转换为小写: "+s1.toLowerCase()); System.out.println("把字符串转换为大写: "+s1.toUpperCase()); //String trim() System.out.println("去掉字符串两端的空格: "+"***"+s1.trim()+"***"); //static String valueOf(xxx b) //System.out.println("把其他类型转换为字符串型: "+valueOf(a)); ???有问题??? } } ——结果如下: 返回s1字符串指定的索引处的char值是: s1和s2用compareTo比较结果是:-65 s1和s2用compareToIngnoreCase不考虑字母大小比较结果是:-65 s1字符串与s2字符串连接的新字符串是: abcwD我们的c秘密 我们的秘密 abcWd我们的秘密 s1字符串是否以指定的字符串开始,返回布尔值::false s1字符串是否以指定的字符串结束,返回布尔值::false s1和s2用equals比较两字符串是否相等,返回布尔值:false s1和s2用equalsIgnoreCase不考虑大小写比较两字符串是否相等,返回布尔值:false 返回s1字符串的哈希码,返回值是数值型:282750190 返回第一次出现的指定子字符在此字符串中的索引位置:3 返回从指定的索引位置开始,返回第一次出现的指定子字符在此字符串中的索引位置:3 返回最后一次出现的制定字符串在此字符串中的索引位置: 9 返回从指定的索引位置开始向后搜索,返回第一次出现的指定字符在此字符串中的索引位置:3 返回s1字符串的长度: 20 使用replaceFirst方法用子字符串替代当前字符串中遇到第一个指定的子字符串: abcwD你们的c秘密 我们的秘密 使用replaceAll方法用子字符串替代当前字符串中遇到所有指定的子字符串: abcwD你们的c秘密 你们的秘密 使用split方法用指定的子字符串来拆分此字符串,得到一个字符串数组: abcwD我们 *** c秘密 我们 *** 秘密 返回一个新的字符串,它是此字符串的一个子字符窜:bcwD我们的c秘密 我们的秘密 返回一个新的字符串,它是此字符串的一个子字符窜:bcw 把字符串转换为小写: abcwd我们的c秘密 我们的秘密 把字符串转换为大写: ABCWD我们的C秘密 我们的秘密 去掉字符串两端的空格: ***abcwD我们的c秘密 我们的秘密*** StringBuffer ——StringBuffer类也是java.lang.Object的子类。与String类不同,StringBuffer类是一个在操作中可以更改其内容的字符串类。 ——StringBuffer类构造函数: 构造函数 详细解释 实例 public StringBuffer() 创建一个空字符串缓冲区,默认初始长度为16个字符。 Eg:StringBuffer s1=new StringBuffer(); public StringBuffer(int length) 用length指定的初始长度创建一个空字符串缓冲区。 Eg: StringBuffer s2=new StringBuffer(16); StringBuffer s3=new StringBuffer(s2.length()); public StringBuffer(String str) 用指定的字符串str穿件一个字符串缓冲区,其长度为str的长度再加上16个字符。 Eg: StringBuffer s3=new StringBuffer("abcdef"); StringBuffer s4=new StringBuffer(s3); ——关于构造函数验证程序如下: public class example4 { public static void main(String[] args) { StringBuffer s1=new StringBuffer(); StringBuffer s2=new StringBuffer(16); StringBuffer s3=new StringBuffer("abcdef"); StringBuffer s4=new StringBuffer(s3); System.out.println("s1="+s1); System.out.println("s2="+s2); System.out.println("s3="+s3); System.out.println("s4="+s4); System.out.println("s1的长度是: "+s1.length()); System.out.println("s2的长度是: "+s2.length()); System.out.println("s3的长度是: "+s3.length()); System.out.println("s4的长度是: "+s4.length()); } } ——结果如下: s1= s2= s3=abcdef s4=abcdef s1的长度是: 0 s2的长度是: 0 s3的长度是: 6 s4的长度是: 6 ——StringBuffer类对象的常用操作及方法 方法摘要 StringBuffer append(boolean b) 将 boolean 参数的字符串表示形式追加到序列。 StringBuffer append(char c) 将 char 参数的字符串表示形式追加到此序列。 StringBuffer append(char[] str) 将 char 数组参数的字符串表示形式追加到此序列。 StringBuffer append(char[] str, int offset, int len) 将 char 数组参数的子数组的字符串表示形式追加到此序列。 StringBuffer append(CharSequence s) 将指定的 CharSequence 追加到该序列。 StringBuffer append(CharSequence s, int start, int end) 将指定 CharSequence 的子序列追加到此序列。 StringBuffer append(double d) 将 double 参数的字符串表示形式追加到此序列。 StringBuffer append(float f) 将 float 参数的字符串表示形式追加到此序列。 StringBuffer append(int i) 将 int 参数的字符串表示形式追加到此序列。 StringBuffer append(long lng) 将 long 参数的字符串表示形式追加到此序列。 StringBuffer append(Object obj) 追加 Object 参数的字符串表示形式。 StringBuffer append(String str) 将指定的字符串追加到此字符序列。 StringBuffer append(StringBuffer sb) 将指定的 StringBuffer 追加到此序列中。 StringBuffer appendCodePoint(int codePoint) 将 codePoint 参数的字符串表示形式追加到此序列。 int capacity() 返回当前容量。 char charAt(int index) 返回此序列中指定索引处的 char 值。 int codePointAt(int index) 返回指定索引处的字符(统一代码点)。 int codePointBefore(int index) 返回指定索引前的字符(统一代码点)。 int codePointCount(int beginIndex, int endIndex) 返回此序列指定文本范围内的统一代码点。 StringBuffer delete(int start, int end) 移除此序列的子字符串中的字符。 StringBuffer deleteCharAt(int index) 移除此序列指定位置的 char。 void ensureCapacity(int minimumCapacity) 确保容量至少等于指定的最小值。 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) 将字符从此序列复制到目标字符数组 dst。 int indexOf(String str) 返回第一次出现的指定子字符串在该字符串中的索引。 int indexOf(String str, int fromIndex) 从指定的索引处开始,返回第一次出现的指定子字符串在该字符串中的索引。 StringBuffer insert(int offset, boolean b) 将 boolean 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, char c) 将 char 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, char[] str) 将 char 数组参数的字符串表示形式插入此序列中。 StringBuffer insert(int index, char[] str, int offset, int len) 将数组参数 str 的子数组的字符串表示形式插入此序列中。 StringBuffer insert(int dstOffset, CharSequence s) 将指定 CharSequence 插入此序列中。 StringBuffer insert(int dstOffset, CharSequence s, int start, int end) 将指定 CharSequence 的子序列插入此序列中。 StringBuffer insert(int offset, double d) 将 double 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, float f) 将 float 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, int i) 将 int 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, long l) 将 long 参数的字符串表示形式插入此序列中。 StringBuffer insert(int offset, Object obj) 将 Object 参数的字符串表示形式插入此字符序列中。 StringBuffer insert(int offset, String str) 将字符串插入此字符序列中。 int lastIndexOf(String str) 返回最右边出现的指定子字符串在此字符串中的索引。 int lastIndexOf(String str, int fromIndex) 返回最后一次出现的指定子字符串在此字符串中的索引。 int length() 返回长度(字符数)。 int offsetByCodePoints(int index, int codePointOffset) 返回此序列中的一个索引,该索引是从给定 index 偏移 codePointOffset 个代码点后得到的。 StringBuffer replace(int start, int end, String str) 使用给定 String 中的字符替换此序列的子字符串中的字符。 StringBuffer reverse() 将此字符序列用其反转形式取代。 void setCharAt(int index, char ch) 将给定索引处的字符设置为 ch。 void setLength(int newLength) 设置字符序列的长度。 CharSequence subSequence(int start, int end) 返回一个新的字符序列,该字符序列是此序列的子序列。 String substring(int start) 返回一个新的 String,它包含此字符序列当前所包含的字符子序列。 String substring(int start, int end) 返回一个新的 String,它包含此序列当前所包含的字符子序列。 String toString() 返回此序列中数据的字符串表示形式。 void trimToSize() 尝试减少用于字符序列的存储空间。 ——String类和StringBuffer类相互转换 Eg:StringBuffer s1=“abc 我们的秘密 ”; String s2=s1.toString(); //StringBuffer类s1转换为String类s2 StringBuffer s3=new StringBuffer(s2); //String 类s2 赋值给StringBuffer类s3 大小写单个字符转换 l 方法一:(将字符转换为字符串型然后使用字符串函数) public class chapter03_1 { public static void main(String args[]) { char arg='a'; Character arg1=new Character(arg); String arg2=arg1.toString(); System.out.println(arg2.toUpperCase()); } } l 方法二:(将字符转换为数值型-32,然后重新转换为字符型) public class Chapter3 { public static void main(String[] args) { char c='s'; int i=c;//将字符型转换为数值型 i=i-32;//将去32 char j=(char)i;//将减去32后的数值型重新转换为字符型 System.out.println("j="+j); }} 数组 数组类型声明正确写法: l int arry[]; l int []arry; l int arry[8]; (※错误) 注意:数组的声明和对象引用的含义相同,只表示某个数组,并美欧对应的内存空间。 l in tarry[]=new int[20] 数组名=new 数组元素类型[数组长度]; ——申请数组空间 初始化: l int arry[]={1,2,3,4}; 二维数组的行数 数组位置 Eg:数组x定义如下 int x[ ][ ]=new int[3][2] 则 x.length 的值为_3_________, x[0].length 的值为___2_________。 X[0]列数- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 语言 基础 知识点 总结 注意 问题
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【仙人****88】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【仙人****88】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【仙人****88】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【仙人****88】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文